{
  "type": "Program",
  "start": 0,
  "end": 33956,
  "loc": {
    "start": {
      "line": 1,
      "column": 0
    },
    "end": {
      "line": 822,
      "column": 0
    }
  },
  "sourceType": "module",
  "body": [
    {
      "type": "ImportDeclaration",
      "start": 0,
      "end": 50,
      "loc": {
        "start": {
          "line": 1,
          "column": 0
        },
        "end": {
          "line": 1,
          "column": 50
        }
      },
      "specifiers": [
        {
          "type": "ImportSpecifier",
          "start": 8,
          "end": 22,
          "loc": {
            "start": {
              "line": 1,
              "column": 8
            },
            "end": {
              "line": 1,
              "column": 22
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 8,
            "end": 22,
            "loc": {
              "start": {
                "line": 1,
                "column": 8
              },
              "end": {
                "line": 1,
                "column": 22
              }
            },
            "name": "ClassCadObject"
          },
          "local": {
            "type": "Identifier",
            "start": 8,
            "end": 22,
            "loc": {
              "start": {
                "line": 1,
                "column": 8
              },
              "end": {
                "line": 1,
                "column": 22
              }
            },
            "name": "ClassCadObject"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 29,
        "end": 49,
        "loc": {
          "start": {
            "line": 1,
            "column": 29
          },
          "end": {
            "line": 1,
            "column": 49
          }
        },
        "value": "sketcher/ccobjects",
        "rawValue": "sketcher/ccobjects",
        "raw": "'sketcher/ccobjects'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 51,
      "end": 92,
      "loc": {
        "start": {
          "line": 2,
          "column": 0
        },
        "end": {
          "line": 2,
          "column": 41
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 58,
          "end": 66,
          "loc": {
            "start": {
              "line": 2,
              "column": 7
            },
            "end": {
              "line": 2,
              "column": 15
            }
          },
          "local": {
            "type": "Identifier",
            "start": 58,
            "end": 66,
            "loc": {
              "start": {
                "line": 2,
                "column": 7
              },
              "end": {
                "line": 2,
                "column": 15
              }
            },
            "name": "Sketcher"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 72,
        "end": 91,
        "loc": {
          "start": {
            "line": 2,
            "column": 21
          },
          "end": {
            "line": 2,
            "column": 40
          }
        },
        "value": "sketcher/sketcher",
        "rawValue": "sketcher/sketcher",
        "raw": "'sketcher/sketcher'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 93,
      "end": 138,
      "loc": {
        "start": {
          "line": 3,
          "column": 0
        },
        "end": {
          "line": 3,
          "column": 45
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 100,
          "end": 110,
          "loc": {
            "start": {
              "line": 3,
              "column": 7
            },
            "end": {
              "line": 3,
              "column": 17
            }
          },
          "local": {
            "type": "Identifier",
            "start": 100,
            "end": 110,
            "loc": {
              "start": {
                "line": 3,
                "column": 7
              },
              "end": {
                "line": 3,
                "column": 17
              }
            },
            "name": "Constraint"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 116,
        "end": 137,
        "loc": {
          "start": {
            "line": 3,
            "column": 23
          },
          "end": {
            "line": 3,
            "column": 44
          }
        },
        "value": "sketcher/constraint",
        "rawValue": "sketcher/constraint",
        "raw": "'sketcher/constraint'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 139,
      "end": 198,
      "loc": {
        "start": {
          "line": 4,
          "column": 0
        },
        "end": {
          "line": 4,
          "column": 59
        }
      },
      "specifiers": [
        {
          "type": "ImportSpecifier",
          "start": 147,
          "end": 166,
          "loc": {
            "start": {
              "line": 4,
              "column": 8
            },
            "end": {
              "line": 4,
              "column": 27
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 147,
            "end": 166,
            "loc": {
              "start": {
                "line": 4,
                "column": 8
              },
              "end": {
                "line": 4,
                "column": 27
              }
            },
            "name": "ConstraintGenerator"
          },
          "local": {
            "type": "Identifier",
            "start": 147,
            "end": 166,
            "loc": {
              "start": {
                "line": 4,
                "column": 8
              },
              "end": {
                "line": 4,
                "column": 27
              }
            },
            "name": "ConstraintGenerator"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 173,
        "end": 197,
        "loc": {
          "start": {
            "line": 4,
            "column": 34
          },
          "end": {
            "line": 4,
            "column": 58
          }
        },
        "value": "sketcher/constraintgen",
        "rawValue": "sketcher/constraintgen",
        "raw": "'sketcher/constraintgen'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 199,
      "end": 293,
      "loc": {
        "start": {
          "line": 5,
          "column": 0
        },
        "end": {
          "line": 5,
          "column": 94
        }
      },
      "specifiers": [
        {
          "type": "ImportSpecifier",
          "start": 207,
          "end": 222,
          "loc": {
            "start": {
              "line": 5,
              "column": 8
            },
            "end": {
              "line": 5,
              "column": 23
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 207,
            "end": 222,
            "loc": {
              "start": {
                "line": 5,
                "column": 8
              },
              "end": {
                "line": 5,
                "column": 23
              }
            },
            "name": "executePrepared"
          },
          "local": {
            "type": "Identifier",
            "start": 207,
            "end": 222,
            "loc": {
              "start": {
                "line": 5,
                "column": 8
              },
              "end": {
                "line": 5,
                "column": 23
              }
            },
            "name": "executePrepared"
          }
        },
        {
          "type": "ImportSpecifier",
          "start": 224,
          "end": 236,
          "loc": {
            "start": {
              "line": 5,
              "column": 25
            },
            "end": {
              "line": 5,
              "column": 37
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 224,
            "end": 236,
            "loc": {
              "start": {
                "line": 5,
                "column": 25
              },
              "end": {
                "line": 5,
                "column": 37
              }
            },
            "name": "trackPromise"
          },
          "local": {
            "type": "Identifier",
            "start": 224,
            "end": 236,
            "loc": {
              "start": {
                "line": 5,
                "column": 25
              },
              "end": {
                "line": 5,
                "column": 37
              }
            },
            "name": "trackPromise"
          }
        },
        {
          "type": "ImportSpecifier",
          "start": 238,
          "end": 245,
          "loc": {
            "start": {
              "line": 5,
              "column": 39
            },
            "end": {
              "line": 5,
              "column": 46
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 238,
            "end": 245,
            "loc": {
              "start": {
                "line": 5,
                "column": 39
              },
              "end": {
                "line": 5,
                "column": 46
              }
            },
            "name": "Interop"
          },
          "local": {
            "type": "Identifier",
            "start": 238,
            "end": 245,
            "loc": {
              "start": {
                "line": 5,
                "column": 39
              },
              "end": {
                "line": 5,
                "column": 46
              }
            },
            "name": "Interop"
          }
        },
        {
          "type": "ImportSpecifier",
          "start": 247,
          "end": 265,
          "loc": {
            "start": {
              "line": 5,
              "column": 48
            },
            "end": {
              "line": 5,
              "column": 66
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 247,
            "end": 265,
            "loc": {
              "start": {
                "line": 5,
                "column": 48
              },
              "end": {
                "line": 5,
                "column": 66
              }
            },
            "name": "getObjectStatement"
          },
          "local": {
            "type": "Identifier",
            "start": 247,
            "end": 265,
            "loc": {
              "start": {
                "line": 5,
                "column": 48
              },
              "end": {
                "line": 5,
                "column": 66
              }
            },
            "name": "getObjectStatement"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 272,
        "end": 292,
        "loc": {
          "start": {
            "line": 5,
            "column": 73
          },
          "end": {
            "line": 5,
            "column": 93
          }
        },
        "value": "sketcher/cchelpers",
        "rawValue": "sketcher/cchelpers",
        "raw": "'sketcher/cchelpers'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 294,
      "end": 348,
      "loc": {
        "start": {
          "line": 6,
          "column": 0
        },
        "end": {
          "line": 6,
          "column": 54
        }
      },
      "specifiers": [
        {
          "type": "ImportSpecifier",
          "start": 302,
          "end": 307,
          "loc": {
            "start": {
              "line": 6,
              "column": 8
            },
            "end": {
              "line": 6,
              "column": 13
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 302,
            "end": 307,
            "loc": {
              "start": {
                "line": 6,
                "column": 8
              },
              "end": {
                "line": 6,
                "column": 13
              }
            },
            "name": "Point"
          },
          "local": {
            "type": "Identifier",
            "start": 302,
            "end": 307,
            "loc": {
              "start": {
                "line": 6,
                "column": 8
              },
              "end": {
                "line": 6,
                "column": 13
              }
            },
            "name": "Point"
          }
        },
        {
          "type": "ImportSpecifier",
          "start": 309,
          "end": 313,
          "loc": {
            "start": {
              "line": 6,
              "column": 15
            },
            "end": {
              "line": 6,
              "column": 19
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 309,
            "end": 313,
            "loc": {
              "start": {
                "line": 6,
                "column": 15
              },
              "end": {
                "line": 6,
                "column": 19
              }
            },
            "name": "Line"
          },
          "local": {
            "type": "Identifier",
            "start": 309,
            "end": 313,
            "loc": {
              "start": {
                "line": 6,
                "column": 15
              },
              "end": {
                "line": 6,
                "column": 19
              }
            },
            "name": "Line"
          }
        },
        {
          "type": "ImportSpecifier",
          "start": 315,
          "end": 318,
          "loc": {
            "start": {
              "line": 6,
              "column": 21
            },
            "end": {
              "line": 6,
              "column": 24
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 315,
            "end": 318,
            "loc": {
              "start": {
                "line": 6,
                "column": 21
              },
              "end": {
                "line": 6,
                "column": 24
              }
            },
            "name": "Arc"
          },
          "local": {
            "type": "Identifier",
            "start": 315,
            "end": 318,
            "loc": {
              "start": {
                "line": 6,
                "column": 21
              },
              "end": {
                "line": 6,
                "column": 24
              }
            },
            "name": "Arc"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 325,
        "end": 347,
        "loc": {
          "start": {
            "line": 6,
            "column": 31
          },
          "end": {
            "line": 6,
            "column": 53
          }
        },
        "value": "sketcher/geomobjects",
        "rawValue": "sketcher/geomobjects",
        "raw": "'sketcher/geomobjects'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 349,
      "end": 385,
      "loc": {
        "start": {
          "line": 7,
          "column": 0
        },
        "end": {
          "line": 7,
          "column": 36
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 356,
          "end": 363,
          "loc": {
            "start": {
              "line": 7,
              "column": 7
            },
            "end": {
              "line": 7,
              "column": 14
            }
          },
          "local": {
            "type": "Identifier",
            "start": 356,
            "end": 363,
            "loc": {
              "start": {
                "line": 7,
                "column": 7
              },
              "end": {
                "line": 7,
                "column": 14
              }
            },
            "name": "Object3"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 369,
        "end": 384,
        "loc": {
          "start": {
            "line": 7,
            "column": 20
          },
          "end": {
            "line": 7,
            "column": 35
          }
        },
        "value": "three/object3",
        "rawValue": "three/object3",
        "raw": "'three/object3'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 386,
      "end": 415,
      "loc": {
        "start": {
          "line": 8,
          "column": 0
        },
        "end": {
          "line": 8,
          "column": 29
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 393,
          "end": 397,
          "loc": {
            "start": {
              "line": 8,
              "column": 7
            },
            "end": {
              "line": 8,
              "column": 11
            }
          },
          "local": {
            "type": "Identifier",
            "start": 393,
            "end": 397,
            "loc": {
              "start": {
                "line": 8,
                "column": 7
              },
              "end": {
                "line": 8,
                "column": 11
              }
            },
            "name": "View"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 403,
        "end": 414,
        "loc": {
          "start": {
            "line": 8,
            "column": 17
          },
          "end": {
            "line": 8,
            "column": 28
          }
        },
        "value": "core/view",
        "rawValue": "core/view",
        "raw": "'core/view'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 416,
      "end": 442,
      "loc": {
        "start": {
          "line": 9,
          "column": 0
        },
        "end": {
          "line": 9,
          "column": 26
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 423,
          "end": 428,
          "loc": {
            "start": {
              "line": 9,
              "column": 7
            },
            "end": {
              "line": 9,
              "column": 12
            }
          },
          "local": {
            "type": "Identifier",
            "start": 423,
            "end": 428,
            "loc": {
              "start": {
                "line": 9,
                "column": 7
              },
              "end": {
                "line": 9,
                "column": 12
              }
            },
            "name": "THREE"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 434,
        "end": 441,
        "loc": {
          "start": {
            "line": 9,
            "column": 18
          },
          "end": {
            "line": 9,
            "column": 25
          }
        },
        "value": "three",
        "rawValue": "three",
        "raw": "'three'"
      }
    },
    {
      "type": "ExportDefaultDeclaration",
      "start": 444,
      "end": 33903,
      "loc": {
        "start": {
          "line": 11,
          "column": 0
        },
        "end": {
          "line": 819,
          "column": 1
        }
      },
      "declaration": {
        "type": "ClassDeclaration",
        "start": 459,
        "end": 33903,
        "loc": {
          "start": {
            "line": 11,
            "column": 15
          },
          "end": {
            "line": 819,
            "column": 1
          }
        },
        "id": {
          "type": "Identifier",
          "start": 465,
          "end": 471,
          "loc": {
            "start": {
              "line": 11,
              "column": 21
            },
            "end": {
              "line": 11,
              "column": 27
            }
          },
          "name": "Sketch"
        },
        "superClass": {
          "type": "Identifier",
          "start": 480,
          "end": 494,
          "loc": {
            "start": {
              "line": 11,
              "column": 36
            },
            "end": {
              "line": 11,
              "column": 50
            }
          },
          "name": "ClassCadObject"
        },
        "body": {
          "type": "ClassBody",
          "start": 495,
          "end": 33903,
          "loc": {
            "start": {
              "line": 11,
              "column": 51
            },
            "end": {
              "line": 819,
              "column": 1
            }
          },
          "body": [
            {
              "type": "MethodDefinition",
              "start": 501,
              "end": 4094,
              "loc": {
                "start": {
                  "line": 12,
                  "column": 4
                },
                "end": {
                  "line": 82,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 501,
                "end": 512,
                "loc": {
                  "start": {
                    "line": 12,
                    "column": 4
                  },
                  "end": {
                    "line": 12,
                    "column": 15
                  }
                },
                "name": "constructor"
              },
              "static": false,
              "kind": "constructor",
              "value": {
                "type": "FunctionExpression",
                "start": 512,
                "end": 4094,
                "loc": {
                  "start": {
                    "line": 12,
                    "column": 15
                  },
                  "end": {
                    "line": 82,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 515,
                  "end": 4094,
                  "loc": {
                    "start": {
                      "line": 12,
                      "column": 18
                    },
                    "end": {
                      "line": 82,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 525,
                      "end": 533,
                      "loc": {
                        "start": {
                          "line": 13,
                          "column": 8
                        },
                        "end": {
                          "line": 13,
                          "column": 16
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 525,
                        "end": 532,
                        "loc": {
                          "start": {
                            "line": 13,
                            "column": 8
                          },
                          "end": {
                            "line": 13,
                            "column": 15
                          }
                        },
                        "callee": {
                          "type": "Super",
                          "start": 525,
                          "end": 530,
                          "loc": {
                            "start": {
                              "line": 13,
                              "column": 8
                            },
                            "end": {
                              "line": 13,
                              "column": 13
                            }
                          }
                        },
                        "arguments": []
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " set of objects added with addToSketch",
                          "start": 542,
                          "end": 582,
                          "loc": {
                            "start": {
                              "line": 14,
                              "column": 8
                            },
                            "end": {
                              "line": 14,
                              "column": 48
                            }
                          },
                          "range": [
                            542,
                            582
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 591,
                      "end": 626,
                      "loc": {
                        "start": {
                          "line": 15,
                          "column": 8
                        },
                        "end": {
                          "line": 15,
                          "column": 43
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 591,
                        "end": 625,
                        "loc": {
                          "start": {
                            "line": 15,
                            "column": 8
                          },
                          "end": {
                            "line": 15,
                            "column": 42
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 591,
                          "end": 609,
                          "loc": {
                            "start": {
                              "line": 15,
                              "column": 8
                            },
                            "end": {
                              "line": 15,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 591,
                            "end": 595,
                            "loc": {
                              "start": {
                                "line": 15,
                                "column": 8
                              },
                              "end": {
                                "line": 15,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 596,
                            "end": 609,
                            "loc": {
                              "start": {
                                "line": 15,
                                "column": 13
                              },
                              "end": {
                                "line": 15,
                                "column": 26
                              }
                            },
                            "name": "sketchObjects"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 612,
                          "end": 625,
                          "loc": {
                            "start": {
                              "line": 15,
                              "column": 29
                            },
                            "end": {
                              "line": 15,
                              "column": 42
                            }
                          },
                          "callee": {
                            "type": "Identifier",
                            "start": 616,
                            "end": 623,
                            "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": 542,
                          "end": 582,
                          "loc": {
                            "start": {
                              "line": 14,
                              "column": 8
                            },
                            "end": {
                              "line": 14,
                              "column": 48
                            }
                          },
                          "range": [
                            542,
                            582
                          ]
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "Note: should not be accessed by anyone accept Sketcher",
                          "start": 635,
                          "end": 691,
                          "loc": {
                            "start": {
                              "line": 16,
                              "column": 8
                            },
                            "end": {
                              "line": 16,
                              "column": 64
                            }
                          },
                          "range": [
                            635,
                            691
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 700,
                      "end": 807,
                      "loc": {
                        "start": {
                          "line": 17,
                          "column": 8
                        },
                        "end": {
                          "line": 17,
                          "column": 115
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 700,
                        "end": 806,
                        "loc": {
                          "start": {
                            "line": 17,
                            "column": 8
                          },
                          "end": {
                            "line": 17,
                            "column": 114
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 700,
                          "end": 724,
                          "loc": {
                            "start": {
                              "line": 17,
                              "column": 8
                            },
                            "end": {
                              "line": 17,
                              "column": 32
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 700,
                            "end": 704,
                            "loc": {
                              "start": {
                                "line": 17,
                                "column": 8
                              },
                              "end": {
                                "line": 17,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 705,
                            "end": 724,
                            "loc": {
                              "start": {
                                "line": 17,
                                "column": 13
                              },
                              "end": {
                                "line": 17,
                                "column": 32
                              }
                            },
                            "name": "infiniteBoxMaterial"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 727,
                          "end": 806,
                          "loc": {
                            "start": {
                              "line": 17,
                              "column": 35
                            },
                            "end": {
                              "line": 17,
                              "column": 114
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 731,
                            "end": 754,
                            "loc": {
                              "start": {
                                "line": 17,
                                "column": 39
                              },
                              "end": {
                                "line": 17,
                                "column": 62
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 731,
                              "end": 736,
                              "loc": {
                                "start": {
                                  "line": 17,
                                  "column": 39
                                },
                                "end": {
                                  "line": 17,
                                  "column": 44
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 737,
                              "end": 754,
                              "loc": {
                                "start": {
                                  "line": 17,
                                  "column": 45
                                },
                                "end": {
                                  "line": 17,
                                  "column": 62
                                }
                              },
                              "name": "MeshBasicMaterial"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "ObjectExpression",
                              "start": 755,
                              "end": 805,
                              "loc": {
                                "start": {
                                  "line": 17,
                                  "column": 63
                                },
                                "end": {
                                  "line": 17,
                                  "column": 113
                                }
                              },
                              "properties": [
                                {
                                  "type": "Property",
                                  "start": 756,
                                  "end": 771,
                                  "loc": {
                                    "start": {
                                      "line": 17,
                                      "column": 64
                                    },
                                    "end": {
                                      "line": 17,
                                      "column": 79
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 756,
                                    "end": 761,
                                    "loc": {
                                      "start": {
                                        "line": 17,
                                        "column": 64
                                      },
                                      "end": {
                                        "line": 17,
                                        "column": 69
                                      }
                                    },
                                    "name": "color"
                                  },
                                  "value": {
                                    "type": "Literal",
                                    "start": 763,
                                    "end": 771,
                                    "loc": {
                                      "start": {
                                        "line": 17,
                                        "column": 71
                                      },
                                      "end": {
                                        "line": 17,
                                        "column": 79
                                      }
                                    },
                                    "value": 4144959,
                                    "rawValue": 4144959,
                                    "raw": "0x3f3f3f"
                                  },
                                  "kind": "init"
                                },
                                {
                                  "type": "Property",
                                  "start": 773,
                                  "end": 788,
                                  "loc": {
                                    "start": {
                                      "line": 17,
                                      "column": 81
                                    },
                                    "end": {
                                      "line": 17,
                                      "column": 96
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 773,
                                    "end": 782,
                                    "loc": {
                                      "start": {
                                        "line": 17,
                                        "column": 81
                                      },
                                      "end": {
                                        "line": 17,
                                        "column": 90
                                      }
                                    },
                                    "name": "wireframe"
                                  },
                                  "value": {
                                    "type": "Literal",
                                    "start": 784,
                                    "end": 788,
                                    "loc": {
                                      "start": {
                                        "line": 17,
                                        "column": 92
                                      },
                                      "end": {
                                        "line": 17,
                                        "column": 96
                                      }
                                    },
                                    "value": true,
                                    "rawValue": true,
                                    "raw": "true"
                                  },
                                  "kind": "init"
                                },
                                {
                                  "type": "Property",
                                  "start": 790,
                                  "end": 804,
                                  "loc": {
                                    "start": {
                                      "line": 17,
                                      "column": 98
                                    },
                                    "end": {
                                      "line": 17,
                                      "column": 112
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 790,
                                    "end": 797,
                                    "loc": {
                                      "start": {
                                        "line": 17,
                                        "column": 98
                                      },
                                      "end": {
                                        "line": 17,
                                        "column": 105
                                      }
                                    },
                                    "name": "visible"
                                  },
                                  "value": {
                                    "type": "Literal",
                                    "start": 799,
                                    "end": 804,
                                    "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": 635,
                          "end": 691,
                          "loc": {
                            "start": {
                              "line": 16,
                              "column": 8
                            },
                            "end": {
                              "line": 16,
                              "column": 64
                            }
                          },
                          "range": [
                            635,
                            691
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 816,
                      "end": 1052,
                      "loc": {
                        "start": {
                          "line": 18,
                          "column": 8
                        },
                        "end": {
                          "line": 22,
                          "column": 15
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 816,
                        "end": 1051,
                        "loc": {
                          "start": {
                            "line": 18,
                            "column": 8
                          },
                          "end": {
                            "line": 22,
                            "column": 14
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 816,
                          "end": 837,
                          "loc": {
                            "start": {
                              "line": 18,
                              "column": 8
                            },
                            "end": {
                              "line": 18,
                              "column": 29
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 816,
                            "end": 820,
                            "loc": {
                              "start": {
                                "line": 18,
                                "column": 8
                              },
                              "end": {
                                "line": 18,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 821,
                            "end": 837,
                            "loc": {
                              "start": {
                                "line": 18,
                                "column": 13
                              },
                              "end": {
                                "line": 18,
                                "column": 29
                              }
                            },
                            "name": "frameBoxMaterial"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 840,
                          "end": 1051,
                          "loc": {
                            "start": {
                              "line": 18,
                              "column": 32
                            },
                            "end": {
                              "line": 22,
                              "column": 14
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 844,
                            "end": 867,
                            "loc": {
                              "start": {
                                "line": 18,
                                "column": 36
                              },
                              "end": {
                                "line": 18,
                                "column": 59
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 844,
                              "end": 849,
                              "loc": {
                                "start": {
                                  "line": 18,
                                  "column": 36
                                },
                                "end": {
                                  "line": 18,
                                  "column": 41
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 850,
                              "end": 867,
                              "loc": {
                                "start": {
                                  "line": 18,
                                  "column": 42
                                },
                                "end": {
                                  "line": 18,
                                  "column": 59
                                }
                              },
                              "name": "MeshPhongMaterial"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "ObjectExpression",
                              "start": 881,
                              "end": 1050,
                              "loc": {
                                "start": {
                                  "line": 19,
                                  "column": 12
                                },
                                "end": {
                                  "line": 22,
                                  "column": 13
                                }
                              },
                              "properties": [
                                {
                                  "type": "Property",
                                  "start": 899,
                                  "end": 914,
                                  "loc": {
                                    "start": {
                                      "line": 20,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 20,
                                      "column": 31
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 899,
                                    "end": 904,
                                    "loc": {
                                      "start": {
                                        "line": 20,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 20,
                                        "column": 21
                                      }
                                    },
                                    "name": "color"
                                  },
                                  "value": {
                                    "type": "Literal",
                                    "start": 906,
                                    "end": 914,
                                    "loc": {
                                      "start": {
                                        "line": 20,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 20,
                                        "column": 31
                                      }
                                    },
                                    "value": 16777215,
                                    "rawValue": 16777215,
                                    "raw": "0xffffff"
                                  },
                                  "kind": "init"
                                },
                                {
                                  "type": "Property",
                                  "start": 916,
                                  "end": 934,
                                  "loc": {
                                    "start": {
                                      "line": 20,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 20,
                                      "column": 51
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 916,
                                    "end": 924,
                                    "loc": {
                                      "start": {
                                        "line": 20,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 20,
                                        "column": 41
                                      }
                                    },
                                    "name": "emissive"
                                  },
                                  "value": {
                                    "type": "Literal",
                                    "start": 926,
                                    "end": 934,
                                    "loc": {
                                      "start": {
                                        "line": 20,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 20,
                                        "column": 51
                                      }
                                    },
                                    "value": 16777215,
                                    "rawValue": 16777215,
                                    "raw": "0xffffff"
                                  },
                                  "kind": "init"
                                },
                                {
                                  "type": "Property",
                                  "start": 936,
                                  "end": 954,
                                  "loc": {
                                    "start": {
                                      "line": 20,
                                      "column": 53
                                    },
                                    "end": {
                                      "line": 20,
                                      "column": 71
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 936,
                                    "end": 944,
                                    "loc": {
                                      "start": {
                                        "line": 20,
                                        "column": 53
                                      },
                                      "end": {
                                        "line": 20,
                                        "column": 61
                                      }
                                    },
                                    "name": "specular"
                                  },
                                  "value": {
                                    "type": "Literal",
                                    "start": 946,
                                    "end": 954,
                                    "loc": {
                                      "start": {
                                        "line": 20,
                                        "column": 63
                                      },
                                      "end": {
                                        "line": 20,
                                        "column": 71
                                      }
                                    },
                                    "value": 16777215,
                                    "rawValue": 16777215,
                                    "raw": "0xffffff"
                                  },
                                  "kind": "init"
                                },
                                {
                                  "type": "Property",
                                  "start": 956,
                                  "end": 968,
                                  "loc": {
                                    "start": {
                                      "line": 20,
                                      "column": 73
                                    },
                                    "end": {
                                      "line": 20,
                                      "column": 85
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 956,
                                    "end": 965,
                                    "loc": {
                                      "start": {
                                        "line": 20,
                                        "column": 73
                                      },
                                      "end": {
                                        "line": 20,
                                        "column": 82
                                      }
                                    },
                                    "name": "shininess"
                                  },
                                  "value": {
                                    "type": "Literal",
                                    "start": 967,
                                    "end": 968,
                                    "loc": {
                                      "start": {
                                        "line": 20,
                                        "column": 84
                                      },
                                      "end": {
                                        "line": 20,
                                        "column": 85
                                      }
                                    },
                                    "value": 1,
                                    "rawValue": 1,
                                    "raw": "1"
                                  },
                                  "kind": "init"
                                },
                                {
                                  "type": "Property",
                                  "start": 986,
                                  "end": 1003,
                                  "loc": {
                                    "start": {
                                      "line": 21,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 21,
                                      "column": 33
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 986,
                                    "end": 997,
                                    "loc": {
                                      "start": {
                                        "line": 21,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 21,
                                        "column": 27
                                      }
                                    },
                                    "name": "transparent"
                                  },
                                  "value": {
                                    "type": "Literal",
                                    "start": 999,
                                    "end": 1003,
                                    "loc": {
                                      "start": {
                                        "line": 21,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 21,
                                        "column": 33
                                      }
                                    },
                                    "value": true,
                                    "rawValue": true,
                                    "raw": "true"
                                  },
                                  "kind": "init"
                                },
                                {
                                  "type": "Property",
                                  "start": 1005,
                                  "end": 1017,
                                  "loc": {
                                    "start": {
                                      "line": 21,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 21,
                                      "column": 47
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 1005,
                                    "end": 1012,
                                    "loc": {
                                      "start": {
                                        "line": 21,
                                        "column": 35
                                      },
                                      "end": {
                                        "line": 21,
                                        "column": 42
                                      }
                                    },
                                    "name": "opacity"
                                  },
                                  "value": {
                                    "type": "Literal",
                                    "start": 1014,
                                    "end": 1017,
                                    "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": 1019,
                                  "end": 1036,
                                  "loc": {
                                    "start": {
                                      "line": 21,
                                      "column": 49
                                    },
                                    "end": {
                                      "line": 21,
                                      "column": 66
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 1019,
                                    "end": 1029,
                                    "loc": {
                                      "start": {
                                        "line": 21,
                                        "column": 49
                                      },
                                      "end": {
                                        "line": 21,
                                        "column": 59
                                      }
                                    },
                                    "name": "depthWrite"
                                  },
                                  "value": {
                                    "type": "Literal",
                                    "start": 1031,
                                    "end": 1036,
                                    "loc": {
                                      "start": {
                                        "line": 21,
                                        "column": 61
                                      },
                                      "end": {
                                        "line": 21,
                                        "column": 66
                                      }
                                    },
                                    "value": false,
                                    "rawValue": false,
                                    "raw": "false"
                                  },
                                  "kind": "init"
                                }
                              ]
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 1061,
                      "end": 1147,
                      "loc": {
                        "start": {
                          "line": 23,
                          "column": 8
                        },
                        "end": {
                          "line": 23,
                          "column": 94
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 1061,
                        "end": 1146,
                        "loc": {
                          "start": {
                            "line": 23,
                            "column": 8
                          },
                          "end": {
                            "line": 23,
                            "column": 93
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 1061,
                          "end": 1071,
                          "loc": {
                            "start": {
                              "line": 23,
                              "column": 8
                            },
                            "end": {
                              "line": 23,
                              "column": 18
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 1061,
                            "end": 1065,
                            "loc": {
                              "start": {
                                "line": 23,
                                "column": 8
                              },
                              "end": {
                                "line": 23,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1066,
                            "end": 1071,
                            "loc": {
                              "start": {
                                "line": 23,
                                "column": 13
                              },
                              "end": {
                                "line": 23,
                                "column": 18
                              }
                            },
                            "name": "__box"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 1074,
                          "end": 1146,
                          "loc": {
                            "start": {
                              "line": 23,
                              "column": 21
                            },
                            "end": {
                              "line": 23,
                              "column": 93
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 1078,
                            "end": 1088,
                            "loc": {
                              "start": {
                                "line": 23,
                                "column": 25
                              },
                              "end": {
                                "line": 23,
                                "column": 35
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 1078,
                              "end": 1083,
                              "loc": {
                                "start": {
                                  "line": 23,
                                  "column": 25
                                },
                                "end": {
                                  "line": 23,
                                  "column": 30
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 1084,
                              "end": 1088,
                              "loc": {
                                "start": {
                                  "line": 23,
                                  "column": 31
                                },
                                "end": {
                                  "line": 23,
                                  "column": 35
                                }
                              },
                              "name": "Mesh"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "NewExpression",
                              "start": 1089,
                              "end": 1119,
                              "loc": {
                                "start": {
                                  "line": 23,
                                  "column": 36
                                },
                                "end": {
                                  "line": 23,
                                  "column": 66
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 1093,
                                "end": 1110,
                                "loc": {
                                  "start": {
                                    "line": 23,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 23,
                                    "column": 57
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 1093,
                                  "end": 1098,
                                  "loc": {
                                    "start": {
                                      "line": 23,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 23,
                                      "column": 45
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 1099,
                                  "end": 1110,
                                  "loc": {
                                    "start": {
                                      "line": 23,
                                      "column": 46
                                    },
                                    "end": {
                                      "line": 23,
                                      "column": 57
                                    }
                                  },
                                  "name": "BoxGeometry"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 1111,
                                  "end": 1112,
                                  "loc": {
                                    "start": {
                                      "line": 23,
                                      "column": 58
                                    },
                                    "end": {
                                      "line": 23,
                                      "column": 59
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                },
                                {
                                  "type": "Literal",
                                  "start": 1114,
                                  "end": 1115,
                                  "loc": {
                                    "start": {
                                      "line": 23,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 23,
                                      "column": 62
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                },
                                {
                                  "type": "Literal",
                                  "start": 1117,
                                  "end": 1118,
                                  "loc": {
                                    "start": {
                                      "line": 23,
                                      "column": 64
                                    },
                                    "end": {
                                      "line": 23,
                                      "column": 65
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                }
                              ]
                            },
                            {
                              "type": "MemberExpression",
                              "start": 1121,
                              "end": 1145,
                              "loc": {
                                "start": {
                                  "line": 23,
                                  "column": 68
                                },
                                "end": {
                                  "line": 23,
                                  "column": 92
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 1121,
                                "end": 1125,
                                "loc": {
                                  "start": {
                                    "line": 23,
                                    "column": 68
                                  },
                                  "end": {
                                    "line": 23,
                                    "column": 72
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 1126,
                                "end": 1145,
                                "loc": {
                                  "start": {
                                    "line": 23,
                                    "column": 73
                                  },
                                  "end": {
                                    "line": 23,
                                    "column": 92
                                  }
                                },
                                "name": "infiniteBoxMaterial"
                              },
                              "computed": false
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 1156,
                      "end": 1194,
                      "loc": {
                        "start": {
                          "line": 24,
                          "column": 8
                        },
                        "end": {
                          "line": 24,
                          "column": 46
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 1156,
                        "end": 1193,
                        "loc": {
                          "start": {
                            "line": 24,
                            "column": 8
                          },
                          "end": {
                            "line": 24,
                            "column": 45
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 1156,
                          "end": 1169,
                          "loc": {
                            "start": {
                              "line": 24,
                              "column": 8
                            },
                            "end": {
                              "line": 24,
                              "column": 21
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 1156,
                            "end": 1160,
                            "loc": {
                              "start": {
                                "line": 24,
                                "column": 8
                              },
                              "end": {
                                "line": 24,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1161,
                            "end": 1169,
                            "loc": {
                              "start": {
                                "line": 24,
                                "column": 13
                              },
                              "end": {
                                "line": 24,
                                "column": 21
                              }
                            },
                            "name": "sketcher"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 1172,
                          "end": 1193,
                          "loc": {
                            "start": {
                              "line": 24,
                              "column": 24
                            },
                            "end": {
                              "line": 24,
                              "column": 45
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 1172,
                            "end": 1178,
                            "loc": {
                              "start": {
                                "line": 24,
                                "column": 24
                              },
                              "end": {
                                "line": 24,
                                "column": 30
                              }
                            },
                            "name": "window"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1179,
                            "end": 1193,
                            "loc": {
                              "start": {
                                "line": 24,
                                "column": 31
                              },
                              "end": {
                                "line": 24,
                                "column": 45
                              }
                            },
                            "name": "globalSketcher"
                          },
                          "computed": false
                        }
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " FIXME usage of global variable",
                          "start": 1195,
                          "end": 1228,
                          "loc": {
                            "start": {
                              "line": 24,
                              "column": 47
                            },
                            "end": {
                              "line": 24,
                              "column": 80
                            }
                          },
                          "range": [
                            1195,
                            1228
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 1237,
                      "end": 1311,
                      "loc": {
                        "start": {
                          "line": 25,
                          "column": 8
                        },
                        "end": {
                          "line": 25,
                          "column": 82
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 1241,
                          "end": 1254,
                          "loc": {
                            "start": {
                              "line": 25,
                              "column": 12
                            },
                            "end": {
                              "line": 25,
                              "column": 25
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 1241,
                            "end": 1247,
                            "loc": {
                              "start": {
                                "line": 25,
                                "column": 12
                              },
                              "end": {
                                "line": 25,
                                "column": 18
                              }
                            },
                            "name": "sketch",
                            "leadingComments": null
                          },
                          "init": {
                            "type": "ThisExpression",
                            "start": 1250,
                            "end": 1254,
                            "loc": {
                              "start": {
                                "line": 25,
                                "column": 21
                              },
                              "end": {
                                "line": 25,
                                "column": 25
                              }
                            }
                          },
                          "leadingComments": null
                        },
                        {
                          "type": "VariableDeclarator",
                          "start": 1256,
                          "end": 1280,
                          "loc": {
                            "start": {
                              "line": 25,
                              "column": 27
                            },
                            "end": {
                              "line": 25,
                              "column": 51
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 1256,
                            "end": 1264,
                            "loc": {
                              "start": {
                                "line": 25,
                                "column": 27
                              },
                              "end": {
                                "line": 25,
                                "column": 35
                              }
                            },
                            "name": "sketcher"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 1267,
                            "end": 1280,
                            "loc": {
                              "start": {
                                "line": 25,
                                "column": 38
                              },
                              "end": {
                                "line": 25,
                                "column": 51
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 1267,
                              "end": 1271,
                              "loc": {
                                "start": {
                                  "line": 25,
                                  "column": 38
                                },
                                "end": {
                                  "line": 25,
                                  "column": 42
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 1272,
                              "end": 1280,
                              "loc": {
                                "start": {
                                  "line": 25,
                                  "column": 43
                                },
                                "end": {
                                  "line": 25,
                                  "column": 51
                                }
                              },
                              "name": "sketcher"
                            },
                            "computed": false
                          }
                        },
                        {
                          "type": "VariableDeclarator",
                          "start": 1282,
                          "end": 1310,
                          "loc": {
                            "start": {
                              "line": 25,
                              "column": 53
                            },
                            "end": {
                              "line": 25,
                              "column": 81
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 1282,
                            "end": 1286,
                            "loc": {
                              "start": {
                                "line": 25,
                                "column": 53
                              },
                              "end": {
                                "line": 25,
                                "column": 57
                              }
                            },
                            "name": "view"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 1289,
                            "end": 1310,
                            "loc": {
                              "start": {
                                "line": 25,
                                "column": 60
                              },
                              "end": {
                                "line": 25,
                                "column": 81
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 1289,
                              "end": 1297,
                              "loc": {
                                "start": {
                                  "line": 25,
                                  "column": 60
                                },
                                "end": {
                                  "line": 25,
                                  "column": 68
                                }
                              },
                              "name": "sketcher"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 1298,
                              "end": 1310,
                              "loc": {
                                "start": {
                                  "line": 25,
                                  "column": 69
                                },
                                "end": {
                                  "line": 25,
                                  "column": 81
                                }
                              },
                              "name": "__parentView"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var",
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " FIXME usage of global variable",
                          "start": 1195,
                          "end": 1228,
                          "loc": {
                            "start": {
                              "line": 24,
                              "column": 47
                            },
                            "end": {
                              "line": 24,
                              "column": 80
                            }
                          },
                          "range": [
                            1195,
                            1228
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 1320,
                      "end": 3222,
                      "loc": {
                        "start": {
                          "line": 26,
                          "column": 8
                        },
                        "end": {
                          "line": 63,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 1320,
                        "end": 3221,
                        "loc": {
                          "start": {
                            "line": 26,
                            "column": 8
                          },
                          "end": {
                            "line": 63,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 1320,
                          "end": 1389,
                          "loc": {
                            "start": {
                              "line": 26,
                              "column": 8
                            },
                            "end": {
                              "line": 28,
                              "column": 13
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 1320,
                            "end": 1386,
                            "loc": {
                              "start": {
                                "line": 26,
                                "column": 8
                              },
                              "end": {
                                "line": 28,
                                "column": 10
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 1320,
                              "end": 1348,
                              "loc": {
                                "start": {
                                  "line": 26,
                                  "column": 8
                                },
                                "end": {
                                  "line": 26,
                                  "column": 36
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 1320,
                                "end": 1330,
                                "loc": {
                                  "start": {
                                    "line": 26,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 26,
                                    "column": 18
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 1320,
                                  "end": 1324,
                                  "loc": {
                                    "start": {
                                      "line": 26,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 26,
                                      "column": 12
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 1325,
                                  "end": 1330,
                                  "loc": {
                                    "start": {
                                      "line": 26,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 26,
                                      "column": 18
                                    }
                                  },
                                  "name": "__box"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 1331,
                                "end": 1348,
                                "loc": {
                                  "start": {
                                    "line": 26,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 26,
                                    "column": 36
                                  }
                                },
                                "name": "createInteraction"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "ObjectExpression",
                                "start": 1349,
                                "end": 1385,
                                "loc": {
                                  "start": {
                                    "line": 26,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 28,
                                    "column": 9
                                  }
                                },
                                "properties": [
                                  {
                                    "type": "Property",
                                    "start": 1363,
                                    "end": 1374,
                                    "loc": {
                                      "start": {
                                        "line": 27,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 27,
                                        "column": 23
                                      }
                                    },
                                    "method": false,
                                    "shorthand": false,
                                    "computed": false,
                                    "key": {
                                      "type": "Identifier",
                                      "start": 1363,
                                      "end": 1371,
                                      "loc": {
                                        "start": {
                                          "line": 27,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 27,
                                          "column": 20
                                        }
                                      },
                                      "name": "priority"
                                    },
                                    "value": {
                                      "type": "Literal",
                                      "start": 1373,
                                      "end": 1374,
                                      "loc": {
                                        "start": {
                                          "line": 27,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 27,
                                          "column": 23
                                        }
                                      },
                                      "value": 1,
                                      "rawValue": 1,
                                      "raw": "1"
                                    },
                                    "kind": "init"
                                  }
                                ]
                              }
                            ]
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1387,
                            "end": 1389,
                            "loc": {
                              "start": {
                                "line": 28,
                                "column": 11
                              },
                              "end": {
                                "line": 28,
                                "column": 13
                              }
                            },
                            "name": "on"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ObjectExpression",
                            "start": 1390,
                            "end": 3220,
                            "loc": {
                              "start": {
                                "line": 28,
                                "column": 14
                              },
                              "end": {
                                "line": 63,
                                "column": 9
                              }
                            },
                            "properties": [
                              {
                                "type": "Property",
                                "start": 1404,
                                "end": 1718,
                                "loc": {
                                  "start": {
                                    "line": 29,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 34,
                                    "column": 13
                                  }
                                },
                                "method": true,
                                "shorthand": false,
                                "computed": true,
                                "key": {
                                  "type": "MemberExpression",
                                  "start": 1405,
                                  "end": 1439,
                                  "loc": {
                                    "start": {
                                      "line": 29,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 29,
                                      "column": 47
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 1405,
                                    "end": 1431,
                                    "loc": {
                                      "start": {
                                        "line": 29,
                                        "column": 13
                                      },
                                      "end": {
                                        "line": 29,
                                        "column": 39
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 1405,
                                      "end": 1419,
                                      "loc": {
                                        "start": {
                                          "line": 29,
                                          "column": 13
                                        },
                                        "end": {
                                          "line": 29,
                                          "column": 27
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 1405,
                                        "end": 1412,
                                        "loc": {
                                          "start": {
                                            "line": 29,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 29,
                                            "column": 20
                                          }
                                        },
                                        "name": "Object3"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 1413,
                                        "end": 1419,
                                        "loc": {
                                          "start": {
                                            "line": 29,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 29,
                                            "column": 27
                                          }
                                        },
                                        "name": "Events"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 1420,
                                      "end": 1431,
                                      "loc": {
                                        "start": {
                                          "line": 29,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 29,
                                          "column": 39
                                        }
                                      },
                                      "name": "Interaction"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 1432,
                                    "end": 1439,
                                    "loc": {
                                      "start": {
                                        "line": 29,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 29,
                                        "column": 47
                                      }
                                    },
                                    "name": "Clicked"
                                  },
                                  "computed": false
                                },
                                "kind": "init",
                                "value": {
                                  "type": "FunctionExpression",
                                  "start": 1440,
                                  "end": 1718,
                                  "loc": {
                                    "start": {
                                      "line": 29,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 34,
                                      "column": 13
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": false,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 1441,
                                      "end": 1445,
                                      "loc": {
                                        "start": {
                                          "line": 29,
                                          "column": 49
                                        },
                                        "end": {
                                          "line": 29,
                                          "column": 53
                                        }
                                      },
                                      "name": "data"
                                    }
                                  ],
                                  "body": {
                                    "type": "BlockStatement",
                                    "start": 1447,
                                    "end": 1718,
                                    "loc": {
                                      "start": {
                                        "line": 29,
                                        "column": 55
                                      },
                                      "end": {
                                        "line": 34,
                                        "column": 13
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "SwitchStatement",
                                        "start": 1465,
                                        "end": 1704,
                                        "loc": {
                                          "start": {
                                            "line": 30,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 33,
                                            "column": 17
                                          }
                                        },
                                        "discriminant": {
                                          "type": "MemberExpression",
                                          "start": 1473,
                                          "end": 1505,
                                          "loc": {
                                            "start": {
                                              "line": 30,
                                              "column": 24
                                            },
                                            "end": {
                                              "line": 30,
                                              "column": 56
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 1473,
                                            "end": 1498,
                                            "loc": {
                                              "start": {
                                                "line": 30,
                                                "column": 24
                                              },
                                              "end": {
                                                "line": 30,
                                                "column": 49
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 1473,
                                              "end": 1490,
                                              "loc": {
                                                "start": {
                                                  "line": 30,
                                                  "column": 24
                                                },
                                                "end": {
                                                  "line": 30,
                                                  "column": 41
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 1473,
                                                "end": 1483,
                                                "loc": {
                                                  "start": {
                                                    "line": 30,
                                                    "column": 24
                                                  },
                                                  "end": {
                                                    "line": 30,
                                                    "column": 34
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 1473,
                                                  "end": 1477,
                                                  "loc": {
                                                    "start": {
                                                      "line": 30,
                                                      "column": 24
                                                    },
                                                    "end": {
                                                      "line": 30,
                                                      "column": 28
                                                    }
                                                  },
                                                  "name": "view"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 1478,
                                                  "end": 1483,
                                                  "loc": {
                                                    "start": {
                                                      "line": 30,
                                                      "column": 29
                                                    },
                                                    "end": {
                                                      "line": 30,
                                                      "column": 34
                                                    }
                                                  },
                                                  "name": "input"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 1484,
                                                "end": 1490,
                                                "loc": {
                                                  "start": {
                                                    "line": 30,
                                                    "column": 35
                                                  },
                                                  "end": {
                                                    "line": 30,
                                                    "column": 41
                                                  }
                                                },
                                                "name": "recent"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 1491,
                                              "end": 1498,
                                              "loc": {
                                                "start": {
                                                  "line": 30,
                                                  "column": 42
                                                },
                                                "end": {
                                                  "line": 30,
                                                  "column": 49
                                                }
                                              },
                                              "name": "mouseup"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 1499,
                                            "end": 1505,
                                            "loc": {
                                              "start": {
                                                "line": 30,
                                                "column": 50
                                              },
                                              "end": {
                                                "line": 30,
                                                "column": 56
                                              }
                                            },
                                            "name": "button"
                                          },
                                          "computed": false
                                        },
                                        "cases": [
                                          {
                                            "type": "SwitchCase",
                                            "start": 1529,
                                            "end": 1610,
                                            "loc": {
                                              "start": {
                                                "line": 31,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 31,
                                                "column": 101
                                              }
                                            },
                                            "consequent": [
                                              {
                                                "type": "ExpressionStatement",
                                                "start": 1537,
                                                "end": 1603,
                                                "loc": {
                                                  "start": {
                                                    "line": 31,
                                                    "column": 28
                                                  },
                                                  "end": {
                                                    "line": 31,
                                                    "column": 94
                                                  }
                                                },
                                                "expression": {
                                                  "type": "CallExpression",
                                                  "start": 1537,
                                                  "end": 1602,
                                                  "loc": {
                                                    "start": {
                                                      "line": 31,
                                                      "column": 28
                                                    },
                                                    "end": {
                                                      "line": 31,
                                                      "column": 93
                                                    }
                                                  },
                                                  "callee": {
                                                    "type": "Identifier",
                                                    "start": 1537,
                                                    "end": 1549,
                                                    "loc": {
                                                      "start": {
                                                        "line": 31,
                                                        "column": 28
                                                      },
                                                      "end": {
                                                        "line": 31,
                                                        "column": 40
                                                      }
                                                    },
                                                    "name": "trackPromise"
                                                  },
                                                  "arguments": [
                                                    {
                                                      "type": "CallExpression",
                                                      "start": 1550,
                                                      "end": 1601,
                                                      "loc": {
                                                        "start": {
                                                          "line": 31,
                                                          "column": 41
                                                        },
                                                        "end": {
                                                          "line": 31,
                                                          "column": 92
                                                        }
                                                      },
                                                      "callee": {
                                                        "type": "MemberExpression",
                                                        "start": 1550,
                                                        "end": 1565,
                                                        "loc": {
                                                          "start": {
                                                            "line": 31,
                                                            "column": 41
                                                          },
                                                          "end": {
                                                            "line": 31,
                                                            "column": 56
                                                          }
                                                        },
                                                        "object": {
                                                          "type": "Identifier",
                                                          "start": 1550,
                                                          "end": 1557,
                                                          "loc": {
                                                            "start": {
                                                              "line": 31,
                                                              "column": 41
                                                            },
                                                            "end": {
                                                              "line": 31,
                                                              "column": 48
                                                            }
                                                          },
                                                          "name": "Promise"
                                                        },
                                                        "property": {
                                                          "type": "Identifier",
                                                          "start": 1558,
                                                          "end": 1565,
                                                          "loc": {
                                                            "start": {
                                                              "line": 31,
                                                              "column": 49
                                                            },
                                                            "end": {
                                                              "line": 31,
                                                              "column": 56
                                                            }
                                                          },
                                                          "name": "resolve"
                                                        },
                                                        "computed": false
                                                      },
                                                      "arguments": [
                                                        {
                                                          "type": "CallExpression",
                                                          "start": 1566,
                                                          "end": 1600,
                                                          "loc": {
                                                            "start": {
                                                              "line": 31,
                                                              "column": 57
                                                            },
                                                            "end": {
                                                              "line": 31,
                                                              "column": 91
                                                            }
                                                          },
                                                          "callee": {
                                                            "type": "MemberExpression",
                                                            "start": 1566,
                                                            "end": 1592,
                                                            "loc": {
                                                              "start": {
                                                                "line": 31,
                                                                "column": 57
                                                              },
                                                              "end": {
                                                                "line": 31,
                                                                "column": 83
                                                              }
                                                            },
                                                            "object": {
                                                              "type": "Identifier",
                                                              "start": 1566,
                                                              "end": 1574,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 31,
                                                                  "column": 57
                                                                },
                                                                "end": {
                                                                  "line": 31,
                                                                  "column": 65
                                                                }
                                                              },
                                                              "name": "sketcher"
                                                            },
                                                            "property": {
                                                              "type": "Identifier",
                                                              "start": 1575,
                                                              "end": 1592,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 31,
                                                                  "column": 66
                                                                },
                                                                "end": {
                                                                  "line": 31,
                                                                  "column": 83
                                                                }
                                                              },
                                                              "name": "sketchAreaClicked"
                                                            },
                                                            "computed": false
                                                          },
                                                          "arguments": [
                                                            {
                                                              "type": "Identifier",
                                                              "start": 1593,
                                                              "end": 1599,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 31,
                                                                  "column": 84
                                                                },
                                                                "end": {
                                                                  "line": 31,
                                                                  "column": 90
                                                                }
                                                              },
                                                              "name": "sketch"
                                                            }
                                                          ]
                                                        }
                                                      ]
                                                    }
                                                  ]
                                                }
                                              },
                                              {
                                                "type": "BreakStatement",
                                                "start": 1604,
                                                "end": 1610,
                                                "loc": {
                                                  "start": {
                                                    "line": 31,
                                                    "column": 95
                                                  },
                                                  "end": {
                                                    "line": 31,
                                                    "column": 101
                                                  }
                                                },
                                                "label": null
                                              }
                                            ],
                                            "test": {
                                              "type": "Literal",
                                              "start": 1534,
                                              "end": 1535,
                                              "loc": {
                                                "start": {
                                                  "line": 31,
                                                  "column": 25
                                                },
                                                "end": {
                                                  "line": 31,
                                                  "column": 26
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            }
                                          },
                                          {
                                            "type": "SwitchCase",
                                            "start": 1631,
                                            "end": 1686,
                                            "loc": {
                                              "start": {
                                                "line": 32,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 32,
                                                "column": 75
                                              }
                                            },
                                            "consequent": [
                                              {
                                                "type": "ExpressionStatement",
                                                "start": 1639,
                                                "end": 1679,
                                                "loc": {
                                                  "start": {
                                                    "line": 32,
                                                    "column": 28
                                                  },
                                                  "end": {
                                                    "line": 32,
                                                    "column": 68
                                                  }
                                                },
                                                "expression": {
                                                  "type": "CallExpression",
                                                  "start": 1639,
                                                  "end": 1678,
                                                  "loc": {
                                                    "start": {
                                                      "line": 32,
                                                      "column": 28
                                                    },
                                                    "end": {
                                                      "line": 32,
                                                      "column": 67
                                                    }
                                                  },
                                                  "callee": {
                                                    "type": "MemberExpression",
                                                    "start": 1639,
                                                    "end": 1670,
                                                    "loc": {
                                                      "start": {
                                                        "line": 32,
                                                        "column": 28
                                                      },
                                                      "end": {
                                                        "line": 32,
                                                        "column": 59
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 1639,
                                                      "end": 1647,
                                                      "loc": {
                                                        "start": {
                                                          "line": 32,
                                                          "column": 28
                                                        },
                                                        "end": {
                                                          "line": 32,
                                                          "column": 36
                                                        }
                                                      },
                                                      "name": "sketcher"
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 1648,
                                                      "end": 1670,
                                                      "loc": {
                                                        "start": {
                                                          "line": 32,
                                                          "column": 37
                                                        },
                                                        "end": {
                                                          "line": 32,
                                                          "column": 59
                                                        }
                                                      },
                                                      "name": "sketchAreaRightClicked"
                                                    },
                                                    "computed": false
                                                  },
                                                  "arguments": [
                                                    {
                                                      "type": "Identifier",
                                                      "start": 1671,
                                                      "end": 1677,
                                                      "loc": {
                                                        "start": {
                                                          "line": 32,
                                                          "column": 60
                                                        },
                                                        "end": {
                                                          "line": 32,
                                                          "column": 66
                                                        }
                                                      },
                                                      "name": "sketch"
                                                    }
                                                  ]
                                                }
                                              },
                                              {
                                                "type": "BreakStatement",
                                                "start": 1680,
                                                "end": 1686,
                                                "loc": {
                                                  "start": {
                                                    "line": 32,
                                                    "column": 69
                                                  },
                                                  "end": {
                                                    "line": 32,
                                                    "column": 75
                                                  }
                                                },
                                                "label": null
                                              }
                                            ],
                                            "test": {
                                              "type": "Literal",
                                              "start": 1636,
                                              "end": 1637,
                                              "loc": {
                                                "start": {
                                                  "line": 32,
                                                  "column": 25
                                                },
                                                "end": {
                                                  "line": 32,
                                                  "column": 26
                                                }
                                              },
                                              "value": 2,
                                              "rawValue": 2,
                                              "raw": "2"
                                            }
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                }
                              },
                              {
                                "type": "Property",
                                "start": 1732,
                                "end": 3209,
                                "loc": {
                                  "start": {
                                    "line": 35,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 62,
                                    "column": 13
                                  }
                                },
                                "method": true,
                                "shorthand": false,
                                "computed": true,
                                "key": {
                                  "type": "MemberExpression",
                                  "start": 1733,
                                  "end": 1766,
                                  "loc": {
                                    "start": {
                                      "line": 35,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 35,
                                      "column": 46
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 1733,
                                    "end": 1757,
                                    "loc": {
                                      "start": {
                                        "line": 35,
                                        "column": 13
                                      },
                                      "end": {
                                        "line": 35,
                                        "column": 37
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 1733,
                                      "end": 1747,
                                      "loc": {
                                        "start": {
                                          "line": 35,
                                          "column": 13
                                        },
                                        "end": {
                                          "line": 35,
                                          "column": 27
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 1733,
                                        "end": 1740,
                                        "loc": {
                                          "start": {
                                            "line": 35,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 35,
                                            "column": 20
                                          }
                                        },
                                        "name": "Object3"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 1741,
                                        "end": 1747,
                                        "loc": {
                                          "start": {
                                            "line": 35,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 35,
                                            "column": 27
                                          }
                                        },
                                        "name": "Events"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 1748,
                                      "end": 1757,
                                      "loc": {
                                        "start": {
                                          "line": 35,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 35,
                                          "column": 37
                                        }
                                      },
                                      "name": "Lifecycle"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 1758,
                                    "end": 1766,
                                    "loc": {
                                      "start": {
                                        "line": 35,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 35,
                                        "column": 46
                                      }
                                    },
                                    "name": "Rendered"
                                  },
                                  "computed": false
                                },
                                "kind": "init",
                                "value": {
                                  "type": "FunctionExpression",
                                  "start": 1767,
                                  "end": 3209,
                                  "loc": {
                                    "start": {
                                      "line": 35,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 62,
                                      "column": 13
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": false,
                                  "async": false,
                                  "params": [],
                                  "body": {
                                    "type": "BlockStatement",
                                    "start": 1770,
                                    "end": 3209,
                                    "loc": {
                                      "start": {
                                        "line": 35,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 62,
                                        "column": 13
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "IfStatement",
                                        "start": 1788,
                                        "end": 1854,
                                        "loc": {
                                          "start": {
                                            "line": 36,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 37,
                                            "column": 27
                                          }
                                        },
                                        "test": {
                                          "type": "BinaryExpression",
                                          "start": 1792,
                                          "end": 1825,
                                          "loc": {
                                            "start": {
                                              "line": 36,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 36,
                                              "column": 53
                                            }
                                          },
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 1792,
                                            "end": 1814,
                                            "loc": {
                                              "start": {
                                                "line": 36,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 36,
                                                "column": 42
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 1792,
                                              "end": 1800,
                                              "loc": {
                                                "start": {
                                                  "line": 36,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 36,
                                                  "column": 28
                                                }
                                              },
                                              "name": "sketcher"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 1801,
                                              "end": 1814,
                                              "loc": {
                                                "start": {
                                                  "line": 36,
                                                  "column": 29
                                                },
                                                "end": {
                                                  "line": 36,
                                                  "column": 42
                                                }
                                              },
                                              "name": "currentSketch"
                                            },
                                            "computed": false
                                          },
                                          "operator": "!==",
                                          "right": {
                                            "type": "Identifier",
                                            "start": 1819,
                                            "end": 1825,
                                            "loc": {
                                              "start": {
                                                "line": 36,
                                                "column": 47
                                              },
                                              "end": {
                                                "line": 36,
                                                "column": 53
                                              }
                                            },
                                            "name": "sketch"
                                          }
                                        },
                                        "consequent": {
                                          "type": "ReturnStatement",
                                          "start": 1847,
                                          "end": 1854,
                                          "loc": {
                                            "start": {
                                              "line": 37,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 37,
                                              "column": 27
                                            }
                                          },
                                          "argument": null
                                        },
                                        "alternate": null
                                      },
                                      {
                                        "type": "IfStatement",
                                        "start": 1871,
                                        "end": 1923,
                                        "loc": {
                                          "start": {
                                            "line": 38,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 39,
                                            "column": 27
                                          }
                                        },
                                        "test": {
                                          "type": "UnaryExpression",
                                          "start": 1875,
                                          "end": 1894,
                                          "loc": {
                                            "start": {
                                              "line": 38,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 38,
                                              "column": 39
                                            }
                                          },
                                          "operator": "!",
                                          "prefix": true,
                                          "argument": {
                                            "type": "MemberExpression",
                                            "start": 1876,
                                            "end": 1894,
                                            "loc": {
                                              "start": {
                                                "line": 38,
                                                "column": 21
                                              },
                                              "end": {
                                                "line": 38,
                                                "column": 39
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 1876,
                                              "end": 1886,
                                              "loc": {
                                                "start": {
                                                  "line": 38,
                                                  "column": 21
                                                },
                                                "end": {
                                                  "line": 38,
                                                  "column": 31
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 1876,
                                                "end": 1880,
                                                "loc": {
                                                  "start": {
                                                    "line": 38,
                                                    "column": 21
                                                  },
                                                  "end": {
                                                    "line": 38,
                                                    "column": 25
                                                  }
                                                },
                                                "name": "view"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 1881,
                                                "end": 1886,
                                                "loc": {
                                                  "start": {
                                                    "line": 38,
                                                    "column": 26
                                                  },
                                                  "end": {
                                                    "line": 38,
                                                    "column": 31
                                                  }
                                                },
                                                "name": "input"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 1887,
                                              "end": 1894,
                                              "loc": {
                                                "start": {
                                                  "line": 38,
                                                  "column": 32
                                                },
                                                "end": {
                                                  "line": 38,
                                                  "column": 39
                                                }
                                              },
                                              "name": "enabled"
                                            },
                                            "computed": false
                                          }
                                        },
                                        "consequent": {
                                          "type": "ReturnStatement",
                                          "start": 1916,
                                          "end": 1923,
                                          "loc": {
                                            "start": {
                                              "line": 39,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 39,
                                              "column": 27
                                            }
                                          },
                                          "argument": null
                                        },
                                        "alternate": null
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 1941,
                                        "end": 1977,
                                        "loc": {
                                          "start": {
                                            "line": 41,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 41,
                                            "column": 52
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 1941,
                                          "end": 1976,
                                          "loc": {
                                            "start": {
                                              "line": 41,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 41,
                                              "column": 51
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 1941,
                                            "end": 1958,
                                            "loc": {
                                              "start": {
                                                "line": 41,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 41,
                                                "column": 33
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 1941,
                                              "end": 1947,
                                              "loc": {
                                                "start": {
                                                  "line": 41,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 41,
                                                  "column": 22
                                                }
                                              },
                                              "name": "sketch"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 1948,
                                              "end": 1958,
                                              "loc": {
                                                "start": {
                                                  "line": 41,
                                                  "column": 23
                                                },
                                                "end": {
                                                  "line": 41,
                                                  "column": 33
                                                }
                                              },
                                              "name": "updateGrid"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "MemberExpression",
                                              "start": 1959,
                                              "end": 1975,
                                              "loc": {
                                                "start": {
                                                  "line": 41,
                                                  "column": 34
                                                },
                                                "end": {
                                                  "line": 41,
                                                  "column": 50
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 1959,
                                                "end": 1970,
                                                "loc": {
                                                  "start": {
                                                    "line": 41,
                                                    "column": 34
                                                  },
                                                  "end": {
                                                    "line": 41,
                                                    "column": 45
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 1959,
                                                  "end": 1963,
                                                  "loc": {
                                                    "start": {
                                                      "line": 41,
                                                      "column": 34
                                                    },
                                                    "end": {
                                                      "line": 41,
                                                      "column": 38
                                                    }
                                                  },
                                                  "name": "view"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 1964,
                                                  "end": 1970,
                                                  "loc": {
                                                    "start": {
                                                      "line": 41,
                                                      "column": 39
                                                    },
                                                    "end": {
                                                      "line": 41,
                                                      "column": 45
                                                    }
                                                  },
                                                  "name": "camera"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 1971,
                                                "end": 1975,
                                                "loc": {
                                                  "start": {
                                                    "line": 41,
                                                    "column": 46
                                                  },
                                                  "end": {
                                                    "line": 41,
                                                    "column": 50
                                                  }
                                                },
                                                "name": "size"
                                              },
                                              "computed": false
                                            }
                                          ]
                                        }
                                      },
                                      {
                                        "type": "IfStatement",
                                        "start": 1994,
                                        "end": 2055,
                                        "loc": {
                                          "start": {
                                            "line": 42,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 43,
                                            "column": 27
                                          }
                                        },
                                        "test": {
                                          "type": "UnaryExpression",
                                          "start": 1998,
                                          "end": 2026,
                                          "loc": {
                                            "start": {
                                              "line": 42,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 42,
                                              "column": 48
                                            }
                                          },
                                          "operator": "!",
                                          "prefix": true,
                                          "argument": {
                                            "type": "MemberExpression",
                                            "start": 1999,
                                            "end": 2026,
                                            "loc": {
                                              "start": {
                                                "line": 42,
                                                "column": 21
                                              },
                                              "end": {
                                                "line": 42,
                                                "column": 48
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 1999,
                                              "end": 2016,
                                              "loc": {
                                                "start": {
                                                  "line": 42,
                                                  "column": 21
                                                },
                                                "end": {
                                                  "line": 42,
                                                  "column": 38
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 1999,
                                                "end": 2009,
                                                "loc": {
                                                  "start": {
                                                    "line": 42,
                                                    "column": 21
                                                  },
                                                  "end": {
                                                    "line": 42,
                                                    "column": 31
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 1999,
                                                  "end": 2003,
                                                  "loc": {
                                                    "start": {
                                                      "line": 42,
                                                      "column": 21
                                                    },
                                                    "end": {
                                                      "line": 42,
                                                      "column": 25
                                                    }
                                                  },
                                                  "name": "view"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 2004,
                                                  "end": 2009,
                                                  "loc": {
                                                    "start": {
                                                      "line": 42,
                                                      "column": 26
                                                    },
                                                    "end": {
                                                      "line": 42,
                                                      "column": 31
                                                    }
                                                  },
                                                  "name": "input"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 2010,
                                                "end": 2016,
                                                "loc": {
                                                  "start": {
                                                    "line": 42,
                                                    "column": 32
                                                  },
                                                  "end": {
                                                    "line": 42,
                                                    "column": 38
                                                  }
                                                },
                                                "name": "recent"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 2017,
                                              "end": 2026,
                                              "loc": {
                                                "start": {
                                                  "line": 42,
                                                  "column": 39
                                                },
                                                "end": {
                                                  "line": 42,
                                                  "column": 48
                                                }
                                              },
                                              "name": "mousemove"
                                            },
                                            "computed": false
                                          }
                                        },
                                        "consequent": {
                                          "type": "ReturnStatement",
                                          "start": 2048,
                                          "end": 2055,
                                          "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": 2056,
                                            "end": 2080,
                                            "loc": {
                                              "start": {
                                                "line": 43,
                                                "column": 28
                                              },
                                              "end": {
                                                "line": 43,
                                                "column": 52
                                              }
                                            },
                                            "range": [
                                              2056,
                                              2080
                                            ]
                                          },
                                          {
                                            "type": "CommentLine",
                                            "value": "mouse coordinates in pixels",
                                            "start": 2097,
                                            "end": 2126,
                                            "loc": {
                                              "start": {
                                                "line": 44,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 44,
                                                "column": 45
                                              }
                                            },
                                            "range": [
                                              2097,
                                              2126
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "VariableDeclaration",
                                        "start": 2143,
                                        "end": 2248,
                                        "loc": {
                                          "start": {
                                            "line": 45,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 45,
                                            "column": 121
                                          }
                                        },
                                        "declarations": [
                                          {
                                            "type": "VariableDeclarator",
                                            "start": 2147,
                                            "end": 2247,
                                            "loc": {
                                              "start": {
                                                "line": 45,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 45,
                                                "column": 120
                                              }
                                            },
                                            "id": {
                                              "type": "Identifier",
                                              "start": 2147,
                                              "end": 2153,
                                              "loc": {
                                                "start": {
                                                  "line": 45,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 45,
                                                  "column": 26
                                                }
                                              },
                                              "name": "point2",
                                              "leadingComments": null
                                            },
                                            "init": {
                                              "type": "NewExpression",
                                              "start": 2156,
                                              "end": 2247,
                                              "loc": {
                                                "start": {
                                                  "line": 45,
                                                  "column": 29
                                                },
                                                "end": {
                                                  "line": 45,
                                                  "column": 120
                                                }
                                              },
                                              "callee": {
                                                "type": "MemberExpression",
                                                "start": 2160,
                                                "end": 2173,
                                                "loc": {
                                                  "start": {
                                                    "line": 45,
                                                    "column": 33
                                                  },
                                                  "end": {
                                                    "line": 45,
                                                    "column": 46
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 2160,
                                                  "end": 2165,
                                                  "loc": {
                                                    "start": {
                                                      "line": 45,
                                                      "column": 33
                                                    },
                                                    "end": {
                                                      "line": 45,
                                                      "column": 38
                                                    }
                                                  },
                                                  "name": "THREE"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 2166,
                                                  "end": 2173,
                                                  "loc": {
                                                    "start": {
                                                      "line": 45,
                                                      "column": 39
                                                    },
                                                    "end": {
                                                      "line": 45,
                                                      "column": 46
                                                    }
                                                  },
                                                  "name": "Vector2"
                                                },
                                                "computed": false
                                              },
                                              "arguments": [
                                                {
                                                  "type": "MemberExpression",
                                                  "start": 2174,
                                                  "end": 2209,
                                                  "loc": {
                                                    "start": {
                                                      "line": 45,
                                                      "column": 47
                                                    },
                                                    "end": {
                                                      "line": 45,
                                                      "column": 82
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 2174,
                                                    "end": 2201,
                                                    "loc": {
                                                      "start": {
                                                        "line": 45,
                                                        "column": 47
                                                      },
                                                      "end": {
                                                        "line": 45,
                                                        "column": 74
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "MemberExpression",
                                                      "start": 2174,
                                                      "end": 2191,
                                                      "loc": {
                                                        "start": {
                                                          "line": 45,
                                                          "column": 47
                                                        },
                                                        "end": {
                                                          "line": 45,
                                                          "column": 64
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "MemberExpression",
                                                        "start": 2174,
                                                        "end": 2184,
                                                        "loc": {
                                                          "start": {
                                                            "line": 45,
                                                            "column": 47
                                                          },
                                                          "end": {
                                                            "line": 45,
                                                            "column": 57
                                                          }
                                                        },
                                                        "object": {
                                                          "type": "Identifier",
                                                          "start": 2174,
                                                          "end": 2178,
                                                          "loc": {
                                                            "start": {
                                                              "line": 45,
                                                              "column": 47
                                                            },
                                                            "end": {
                                                              "line": 45,
                                                              "column": 51
                                                            }
                                                          },
                                                          "name": "view"
                                                        },
                                                        "property": {
                                                          "type": "Identifier",
                                                          "start": 2179,
                                                          "end": 2184,
                                                          "loc": {
                                                            "start": {
                                                              "line": 45,
                                                              "column": 52
                                                            },
                                                            "end": {
                                                              "line": 45,
                                                              "column": 57
                                                            }
                                                          },
                                                          "name": "input"
                                                        },
                                                        "computed": false
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 2185,
                                                        "end": 2191,
                                                        "loc": {
                                                          "start": {
                                                            "line": 45,
                                                            "column": 58
                                                          },
                                                          "end": {
                                                            "line": 45,
                                                            "column": 64
                                                          }
                                                        },
                                                        "name": "recent"
                                                      },
                                                      "computed": false
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 2192,
                                                      "end": 2201,
                                                      "loc": {
                                                        "start": {
                                                          "line": 45,
                                                          "column": 65
                                                        },
                                                        "end": {
                                                          "line": 45,
                                                          "column": 74
                                                        }
                                                      },
                                                      "name": "mousemove"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 2202,
                                                    "end": 2209,
                                                    "loc": {
                                                      "start": {
                                                        "line": 45,
                                                        "column": 75
                                                      },
                                                      "end": {
                                                        "line": 45,
                                                        "column": 82
                                                      }
                                                    },
                                                    "name": "offsetX"
                                                  },
                                                  "computed": false
                                                },
                                                {
                                                  "type": "MemberExpression",
                                                  "start": 2211,
                                                  "end": 2246,
                                                  "loc": {
                                                    "start": {
                                                      "line": 45,
                                                      "column": 84
                                                    },
                                                    "end": {
                                                      "line": 45,
                                                      "column": 119
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 2211,
                                                    "end": 2238,
                                                    "loc": {
                                                      "start": {
                                                        "line": 45,
                                                        "column": 84
                                                      },
                                                      "end": {
                                                        "line": 45,
                                                        "column": 111
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "MemberExpression",
                                                      "start": 2211,
                                                      "end": 2228,
                                                      "loc": {
                                                        "start": {
                                                          "line": 45,
                                                          "column": 84
                                                        },
                                                        "end": {
                                                          "line": 45,
                                                          "column": 101
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "MemberExpression",
                                                        "start": 2211,
                                                        "end": 2221,
                                                        "loc": {
                                                          "start": {
                                                            "line": 45,
                                                            "column": 84
                                                          },
                                                          "end": {
                                                            "line": 45,
                                                            "column": 94
                                                          }
                                                        },
                                                        "object": {
                                                          "type": "Identifier",
                                                          "start": 2211,
                                                          "end": 2215,
                                                          "loc": {
                                                            "start": {
                                                              "line": 45,
                                                              "column": 84
                                                            },
                                                            "end": {
                                                              "line": 45,
                                                              "column": 88
                                                            }
                                                          },
                                                          "name": "view"
                                                        },
                                                        "property": {
                                                          "type": "Identifier",
                                                          "start": 2216,
                                                          "end": 2221,
                                                          "loc": {
                                                            "start": {
                                                              "line": 45,
                                                              "column": 89
                                                            },
                                                            "end": {
                                                              "line": 45,
                                                              "column": 94
                                                            }
                                                          },
                                                          "name": "input"
                                                        },
                                                        "computed": false
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 2222,
                                                        "end": 2228,
                                                        "loc": {
                                                          "start": {
                                                            "line": 45,
                                                            "column": 95
                                                          },
                                                          "end": {
                                                            "line": 45,
                                                            "column": 101
                                                          }
                                                        },
                                                        "name": "recent"
                                                      },
                                                      "computed": false
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 2229,
                                                      "end": 2238,
                                                      "loc": {
                                                        "start": {
                                                          "line": 45,
                                                          "column": 102
                                                        },
                                                        "end": {
                                                          "line": 45,
                                                          "column": 111
                                                        }
                                                      },
                                                      "name": "mousemove"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 2239,
                                                    "end": 2246,
                                                    "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": 2056,
                                            "end": 2080,
                                            "loc": {
                                              "start": {
                                                "line": 43,
                                                "column": 28
                                              },
                                              "end": {
                                                "line": 43,
                                                "column": 52
                                              }
                                            },
                                            "range": [
                                              2056,
                                              2080
                                            ]
                                          },
                                          {
                                            "type": "CommentLine",
                                            "value": "mouse coordinates in pixels",
                                            "start": 2097,
                                            "end": 2126,
                                            "loc": {
                                              "start": {
                                                "line": 44,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 44,
                                                "column": 45
                                              }
                                            },
                                            "range": [
                                              2097,
                                              2126
                                            ]
                                          }
                                        ],
                                        "trailingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": "3D line of corresponding points (in world coords)",
                                            "start": 2265,
                                            "end": 2316,
                                            "loc": {
                                              "start": {
                                                "line": 46,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 46,
                                                "column": 67
                                              }
                                            },
                                            "range": [
                                              2265,
                                              2316
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "VariableDeclaration",
                                        "start": 2333,
                                        "end": 2371,
                                        "loc": {
                                          "start": {
                                            "line": 47,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 47,
                                            "column": 54
                                          }
                                        },
                                        "declarations": [
                                          {
                                            "type": "VariableDeclarator",
                                            "start": 2337,
                                            "end": 2370,
                                            "loc": {
                                              "start": {
                                                "line": 47,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 47,
                                                "column": 53
                                              }
                                            },
                                            "id": {
                                              "type": "Identifier",
                                              "start": 2337,
                                              "end": 2342,
                                              "loc": {
                                                "start": {
                                                  "line": 47,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 47,
                                                  "column": 25
                                                }
                                              },
                                              "name": "line3",
                                              "leadingComments": null
                                            },
                                            "init": {
                                              "type": "CallExpression",
                                              "start": 2345,
                                              "end": 2370,
                                              "loc": {
                                                "start": {
                                                  "line": 47,
                                                  "column": 28
                                                },
                                                "end": {
                                                  "line": 47,
                                                  "column": 53
                                                }
                                              },
                                              "callee": {
                                                "type": "MemberExpression",
                                                "start": 2345,
                                                "end": 2362,
                                                "loc": {
                                                  "start": {
                                                    "line": 47,
                                                    "column": 28
                                                  },
                                                  "end": {
                                                    "line": 47,
                                                    "column": 45
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 2345,
                                                  "end": 2349,
                                                  "loc": {
                                                    "start": {
                                                      "line": 47,
                                                      "column": 28
                                                    },
                                                    "end": {
                                                      "line": 47,
                                                      "column": 32
                                                    }
                                                  },
                                                  "name": "view"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 2350,
                                                  "end": 2362,
                                                  "loc": {
                                                    "start": {
                                                      "line": 47,
                                                      "column": 33
                                                    },
                                                    "end": {
                                                      "line": 47,
                                                      "column": 45
                                                    }
                                                  },
                                                  "name": "getViewLine3"
                                                },
                                                "computed": false
                                              },
                                              "arguments": [
                                                {
                                                  "type": "Identifier",
                                                  "start": 2363,
                                                  "end": 2369,
                                                  "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": 2265,
                                            "end": 2316,
                                            "loc": {
                                              "start": {
                                                "line": 46,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 46,
                                                "column": 67
                                              }
                                            },
                                            "range": [
                                              2265,
                                              2316
                                            ]
                                          }
                                        ],
                                        "trailingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": "transform line from world to sketch coords",
                                            "start": 2388,
                                            "end": 2432,
                                            "loc": {
                                              "start": {
                                                "line": 48,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 48,
                                                "column": 60
                                              }
                                            },
                                            "range": [
                                              2388,
                                              2432
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "VariableDeclaration",
                                        "start": 2449,
                                        "end": 2519,
                                        "loc": {
                                          "start": {
                                            "line": 49,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 49,
                                            "column": 86
                                          }
                                        },
                                        "declarations": [
                                          {
                                            "type": "VariableDeclarator",
                                            "start": 2453,
                                            "end": 2518,
                                            "loc": {
                                              "start": {
                                                "line": 49,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 49,
                                                "column": 85
                                              }
                                            },
                                            "id": {
                                              "type": "Identifier",
                                              "start": 2453,
                                              "end": 2465,
                                              "loc": {
                                                "start": {
                                                  "line": 49,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 49,
                                                  "column": 32
                                                }
                                              },
                                              "name": "worldToLocal",
                                              "leadingComments": null
                                            },
                                            "init": {
                                              "type": "CallExpression",
                                              "start": 2468,
                                              "end": 2518,
                                              "loc": {
                                                "start": {
                                                  "line": 49,
                                                  "column": 35
                                                },
                                                "end": {
                                                  "line": 49,
                                                  "column": 85
                                                }
                                              },
                                              "callee": {
                                                "type": "MemberExpression",
                                                "start": 2468,
                                                "end": 2498,
                                                "loc": {
                                                  "start": {
                                                    "line": 49,
                                                    "column": 35
                                                  },
                                                  "end": {
                                                    "line": 49,
                                                    "column": 65
                                                  }
                                                },
                                                "object": {
                                                  "type": "NewExpression",
                                                  "start": 2468,
                                                  "end": 2487,
                                                  "loc": {
                                                    "start": {
                                                      "line": 49,
                                                      "column": 35
                                                    },
                                                    "end": {
                                                      "line": 49,
                                                      "column": 54
                                                    }
                                                  },
                                                  "callee": {
                                                    "type": "MemberExpression",
                                                    "start": 2472,
                                                    "end": 2485,
                                                    "loc": {
                                                      "start": {
                                                        "line": 49,
                                                        "column": 39
                                                      },
                                                      "end": {
                                                        "line": 49,
                                                        "column": 52
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 2472,
                                                      "end": 2477,
                                                      "loc": {
                                                        "start": {
                                                          "line": 49,
                                                          "column": 39
                                                        },
                                                        "end": {
                                                          "line": 49,
                                                          "column": 44
                                                        }
                                                      },
                                                      "name": "THREE"
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 2478,
                                                      "end": 2485,
                                                      "loc": {
                                                        "start": {
                                                          "line": 49,
                                                          "column": 45
                                                        },
                                                        "end": {
                                                          "line": 49,
                                                          "column": 52
                                                        }
                                                      },
                                                      "name": "Matrix4"
                                                    },
                                                    "computed": false
                                                  },
                                                  "arguments": []
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 2488,
                                                  "end": 2498,
                                                  "loc": {
                                                    "start": {
                                                      "line": 49,
                                                      "column": 55
                                                    },
                                                    "end": {
                                                      "line": 49,
                                                      "column": 65
                                                    }
                                                  },
                                                  "name": "getInverse"
                                                },
                                                "computed": false
                                              },
                                              "arguments": [
                                                {
                                                  "type": "MemberExpression",
                                                  "start": 2499,
                                                  "end": 2517,
                                                  "loc": {
                                                    "start": {
                                                      "line": 49,
                                                      "column": 66
                                                    },
                                                    "end": {
                                                      "line": 49,
                                                      "column": 84
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 2499,
                                                    "end": 2505,
                                                    "loc": {
                                                      "start": {
                                                        "line": 49,
                                                        "column": 66
                                                      },
                                                      "end": {
                                                        "line": 49,
                                                        "column": 72
                                                      }
                                                    },
                                                    "name": "sketch"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 2506,
                                                    "end": 2517,
                                                    "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": 2388,
                                            "end": 2432,
                                            "loc": {
                                              "start": {
                                                "line": 48,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 48,
                                                "column": 60
                                              }
                                            },
                                            "range": [
                                              2388,
                                              2432
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 2536,
                                        "end": 2569,
                                        "loc": {
                                          "start": {
                                            "line": 50,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 50,
                                            "column": 49
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 2536,
                                          "end": 2568,
                                          "loc": {
                                            "start": {
                                              "line": 50,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 50,
                                              "column": 48
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 2536,
                                            "end": 2554,
                                            "loc": {
                                              "start": {
                                                "line": 50,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 50,
                                                "column": 34
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 2536,
                                              "end": 2541,
                                              "loc": {
                                                "start": {
                                                  "line": 50,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 50,
                                                  "column": 21
                                                }
                                              },
                                              "name": "line3"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 2542,
                                              "end": 2554,
                                              "loc": {
                                                "start": {
                                                  "line": 50,
                                                  "column": 22
                                                },
                                                "end": {
                                                  "line": 50,
                                                  "column": 34
                                                }
                                              },
                                              "name": "applyMatrix4"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "Identifier",
                                              "start": 2555,
                                              "end": 2567,
                                              "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": 2586,
                                            "end": 2635,
                                            "loc": {
                                              "start": {
                                                "line": 51,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 51,
                                                "column": 65
                                              }
                                            },
                                            "range": [
                                              2586,
                                              2635
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "VariableDeclaration",
                                        "start": 2652,
                                        "end": 2716,
                                        "loc": {
                                          "start": {
                                            "line": 52,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 52,
                                            "column": 80
                                          }
                                        },
                                        "declarations": [
                                          {
                                            "type": "VariableDeclarator",
                                            "start": 2656,
                                            "end": 2715,
                                            "loc": {
                                              "start": {
                                                "line": 52,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 52,
                                                "column": 79
                                              }
                                            },
                                            "id": {
                                              "type": "Identifier",
                                              "start": 2656,
                                              "end": 2661,
                                              "loc": {
                                                "start": {
                                                  "line": 52,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 52,
                                                  "column": 25
                                                }
                                              },
                                              "name": "param",
                                              "leadingComments": null
                                            },
                                            "init": {
                                              "type": "BinaryExpression",
                                              "start": 2664,
                                              "end": 2715,
                                              "loc": {
                                                "start": {
                                                  "line": 52,
                                                  "column": 28
                                                },
                                                "end": {
                                                  "line": 52,
                                                  "column": 79
                                                }
                                              },
                                              "left": {
                                                "type": "BinaryExpression",
                                                "start": 2665,
                                                "end": 2682,
                                                "loc": {
                                                  "start": {
                                                    "line": 52,
                                                    "column": 29
                                                  },
                                                  "end": {
                                                    "line": 52,
                                                    "column": 46
                                                  }
                                                },
                                                "left": {
                                                  "type": "Literal",
                                                  "start": 2665,
                                                  "end": 2666,
                                                  "loc": {
                                                    "start": {
                                                      "line": 52,
                                                      "column": 29
                                                    },
                                                    "end": {
                                                      "line": 52,
                                                      "column": 30
                                                    }
                                                  },
                                                  "value": 0,
                                                  "rawValue": 0,
                                                  "raw": "0"
                                                },
                                                "operator": "-",
                                                "right": {
                                                  "type": "MemberExpression",
                                                  "start": 2669,
                                                  "end": 2682,
                                                  "loc": {
                                                    "start": {
                                                      "line": 52,
                                                      "column": 33
                                                    },
                                                    "end": {
                                                      "line": 52,
                                                      "column": 46
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 2669,
                                                    "end": 2680,
                                                    "loc": {
                                                      "start": {
                                                        "line": 52,
                                                        "column": 33
                                                      },
                                                      "end": {
                                                        "line": 52,
                                                        "column": 44
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 2669,
                                                      "end": 2674,
                                                      "loc": {
                                                        "start": {
                                                          "line": 52,
                                                          "column": 33
                                                        },
                                                        "end": {
                                                          "line": 52,
                                                          "column": 38
                                                        }
                                                      },
                                                      "name": "line3"
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 2675,
                                                      "end": 2680,
                                                      "loc": {
                                                        "start": {
                                                          "line": 52,
                                                          "column": 39
                                                        },
                                                        "end": {
                                                          "line": 52,
                                                          "column": 44
                                                        }
                                                      },
                                                      "name": "start"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 2681,
                                                    "end": 2682,
                                                    "loc": {
                                                      "start": {
                                                        "line": 52,
                                                        "column": 45
                                                      },
                                                      "end": {
                                                        "line": 52,
                                                        "column": 46
                                                      }
                                                    },
                                                    "name": "z"
                                                  },
                                                  "computed": false
                                                },
                                                "parenthesizedExpression": true
                                              },
                                              "operator": "/",
                                              "right": {
                                                "type": "BinaryExpression",
                                                "start": 2687,
                                                "end": 2714,
                                                "loc": {
                                                  "start": {
                                                    "line": 52,
                                                    "column": 51
                                                  },
                                                  "end": {
                                                    "line": 52,
                                                    "column": 78
                                                  }
                                                },
                                                "left": {
                                                  "type": "MemberExpression",
                                                  "start": 2687,
                                                  "end": 2698,
                                                  "loc": {
                                                    "start": {
                                                      "line": 52,
                                                      "column": 51
                                                    },
                                                    "end": {
                                                      "line": 52,
                                                      "column": 62
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 2687,
                                                    "end": 2696,
                                                    "loc": {
                                                      "start": {
                                                        "line": 52,
                                                        "column": 51
                                                      },
                                                      "end": {
                                                        "line": 52,
                                                        "column": 60
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 2687,
                                                      "end": 2692,
                                                      "loc": {
                                                        "start": {
                                                          "line": 52,
                                                          "column": 51
                                                        },
                                                        "end": {
                                                          "line": 52,
                                                          "column": 56
                                                        }
                                                      },
                                                      "name": "line3"
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 2693,
                                                      "end": 2696,
                                                      "loc": {
                                                        "start": {
                                                          "line": 52,
                                                          "column": 57
                                                        },
                                                        "end": {
                                                          "line": 52,
                                                          "column": 60
                                                        }
                                                      },
                                                      "name": "end"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 2697,
                                                    "end": 2698,
                                                    "loc": {
                                                      "start": {
                                                        "line": 52,
                                                        "column": 61
                                                      },
                                                      "end": {
                                                        "line": 52,
                                                        "column": 62
                                                      }
                                                    },
                                                    "name": "z"
                                                  },
                                                  "computed": false
                                                },
                                                "operator": "-",
                                                "right": {
                                                  "type": "MemberExpression",
                                                  "start": 2701,
                                                  "end": 2714,
                                                  "loc": {
                                                    "start": {
                                                      "line": 52,
                                                      "column": 65
                                                    },
                                                    "end": {
                                                      "line": 52,
                                                      "column": 78
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 2701,
                                                    "end": 2712,
                                                    "loc": {
                                                      "start": {
                                                        "line": 52,
                                                        "column": 65
                                                      },
                                                      "end": {
                                                        "line": 52,
                                                        "column": 76
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 2701,
                                                      "end": 2706,
                                                      "loc": {
                                                        "start": {
                                                          "line": 52,
                                                          "column": 65
                                                        },
                                                        "end": {
                                                          "line": 52,
                                                          "column": 70
                                                        }
                                                      },
                                                      "name": "line3"
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 2707,
                                                      "end": 2712,
                                                      "loc": {
                                                        "start": {
                                                          "line": 52,
                                                          "column": 71
                                                        },
                                                        "end": {
                                                          "line": 52,
                                                          "column": 76
                                                        }
                                                      },
                                                      "name": "start"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 2713,
                                                    "end": 2714,
                                                    "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": 2586,
                                            "end": 2635,
                                            "loc": {
                                              "start": {
                                                "line": 51,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 51,
                                                "column": 65
                                              }
                                            },
                                            "range": [
                                              2586,
                                              2635
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "VariableDeclaration",
                                        "start": 2733,
                                        "end": 2767,
                                        "loc": {
                                          "start": {
                                            "line": 53,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 53,
                                            "column": 50
                                          }
                                        },
                                        "declarations": [
                                          {
                                            "type": "VariableDeclarator",
                                            "start": 2737,
                                            "end": 2766,
                                            "loc": {
                                              "start": {
                                                "line": 53,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 53,
                                                "column": 49
                                              }
                                            },
                                            "id": {
                                              "type": "Identifier",
                                              "start": 2737,
                                              "end": 2748,
                                              "loc": {
                                                "start": {
                                                  "line": 53,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 53,
                                                  "column": 31
                                                }
                                              },
                                              "name": "sketchPoint"
                                            },
                                            "init": {
                                              "type": "CallExpression",
                                              "start": 2751,
                                              "end": 2766,
                                              "loc": {
                                                "start": {
                                                  "line": 53,
                                                  "column": 34
                                                },
                                                "end": {
                                                  "line": 53,
                                                  "column": 49
                                                }
                                              },
                                              "callee": {
                                                "type": "MemberExpression",
                                                "start": 2751,
                                                "end": 2759,
                                                "loc": {
                                                  "start": {
                                                    "line": 53,
                                                    "column": 34
                                                  },
                                                  "end": {
                                                    "line": 53,
                                                    "column": 42
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 2751,
                                                  "end": 2756,
                                                  "loc": {
                                                    "start": {
                                                      "line": 53,
                                                      "column": 34
                                                    },
                                                    "end": {
                                                      "line": 53,
                                                      "column": 39
                                                    }
                                                  },
                                                  "name": "line3"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 2757,
                                                  "end": 2759,
                                                  "loc": {
                                                    "start": {
                                                      "line": 53,
                                                      "column": 40
                                                    },
                                                    "end": {
                                                      "line": 53,
                                                      "column": 42
                                                    }
                                                  },
                                                  "name": "at"
                                                },
                                                "computed": false
                                              },
                                              "arguments": [
                                                {
                                                  "type": "Identifier",
                                                  "start": 2760,
                                                  "end": 2765,
                                                  "loc": {
                                                    "start": {
                                                      "line": 53,
                                                      "column": 43
                                                    },
                                                    "end": {
                                                      "line": 53,
                                                      "column": 48
                                                    }
                                                  },
                                                  "name": "param"
                                                }
                                              ]
                                            }
                                          }
                                        ],
                                        "kind": "let"
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 2784,
                                        "end": 2802,
                                        "loc": {
                                          "start": {
                                            "line": 54,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 54,
                                            "column": 34
                                          }
                                        },
                                        "expression": {
                                          "type": "AssignmentExpression",
                                          "start": 2784,
                                          "end": 2801,
                                          "loc": {
                                            "start": {
                                              "line": 54,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 54,
                                              "column": 33
                                            }
                                          },
                                          "operator": "=",
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 2784,
                                            "end": 2797,
                                            "loc": {
                                              "start": {
                                                "line": 54,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 54,
                                                "column": 29
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 2784,
                                              "end": 2795,
                                              "loc": {
                                                "start": {
                                                  "line": 54,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 54,
                                                  "column": 27
                                                }
                                              },
                                              "name": "sketchPoint"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 2796,
                                              "end": 2797,
                                              "loc": {
                                                "start": {
                                                  "line": 54,
                                                  "column": 28
                                                },
                                                "end": {
                                                  "line": 54,
                                                  "column": 29
                                                }
                                              },
                                              "name": "z"
                                            },
                                            "computed": false
                                          },
                                          "right": {
                                            "type": "Literal",
                                            "start": 2800,
                                            "end": 2801,
                                            "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": 2804,
                                            "end": 2831,
                                            "loc": {
                                              "start": {
                                                "line": 54,
                                                "column": 36
                                              },
                                              "end": {
                                                "line": 54,
                                                "column": 63
                                              }
                                            },
                                            "range": [
                                              2804,
                                              2831
                                            ]
                                          },
                                          {
                                            "type": "CommentLine",
                                            "value": "if changed, call mouse move handler",
                                            "start": 2848,
                                            "end": 2885,
                                            "loc": {
                                              "start": {
                                                "line": 55,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 55,
                                                "column": 53
                                              }
                                            },
                                            "range": [
                                              2848,
                                              2885
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "IfStatement",
                                        "start": 2902,
                                        "end": 3159,
                                        "loc": {
                                          "start": {
                                            "line": 56,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 60,
                                            "column": 17
                                          }
                                        },
                                        "test": {
                                          "type": "UnaryExpression",
                                          "start": 2906,
                                          "end": 2962,
                                          "loc": {
                                            "start": {
                                              "line": 56,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 56,
                                              "column": 76
                                            }
                                          },
                                          "operator": "!",
                                          "prefix": true,
                                          "argument": {
                                            "type": "CallExpression",
                                            "start": 2907,
                                            "end": 2962,
                                            "loc": {
                                              "start": {
                                                "line": 56,
                                                "column": 21
                                              },
                                              "end": {
                                                "line": 56,
                                                "column": 76
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 2907,
                                              "end": 2925,
                                              "loc": {
                                                "start": {
                                                  "line": 56,
                                                  "column": 21
                                                },
                                                "end": {
                                                  "line": 56,
                                                  "column": 39
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 2907,
                                                "end": 2918,
                                                "loc": {
                                                  "start": {
                                                    "line": 56,
                                                    "column": 21
                                                  },
                                                  "end": {
                                                    "line": 56,
                                                    "column": 32
                                                  }
                                                },
                                                "name": "sketchPoint",
                                                "leadingComments": null
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 2919,
                                                "end": 2925,
                                                "loc": {
                                                  "start": {
                                                    "line": 56,
                                                    "column": 33
                                                  },
                                                  "end": {
                                                    "line": 56,
                                                    "column": 39
                                                  }
                                                },
                                                "name": "equals"
                                              },
                                              "computed": false,
                                              "leadingComments": null
                                            },
                                            "arguments": [
                                              {
                                                "type": "MemberExpression",
                                                "start": 2926,
                                                "end": 2961,
                                                "loc": {
                                                  "start": {
                                                    "line": 56,
                                                    "column": 40
                                                  },
                                                  "end": {
                                                    "line": 56,
                                                    "column": 75
                                                  }
                                                },
                                                "object": {
                                                  "type": "MemberExpression",
                                                  "start": 2926,
                                                  "end": 2944,
                                                  "loc": {
                                                    "start": {
                                                      "line": 56,
                                                      "column": 40
                                                    },
                                                    "end": {
                                                      "line": 56,
                                                      "column": 58
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 2926,
                                                    "end": 2934,
                                                    "loc": {
                                                      "start": {
                                                        "line": 56,
                                                        "column": 40
                                                      },
                                                      "end": {
                                                        "line": 56,
                                                        "column": 48
                                                      }
                                                    },
                                                    "name": "sketcher"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 2935,
                                                    "end": 2944,
                                                    "loc": {
                                                      "start": {
                                                        "line": 56,
                                                        "column": 49
                                                      },
                                                      "end": {
                                                        "line": 56,
                                                        "column": 58
                                                      }
                                                    },
                                                    "name": "modelData"
                                                  },
                                                  "computed": false
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 2945,
                                                  "end": 2961,
                                                  "loc": {
                                                    "start": {
                                                      "line": 56,
                                                      "column": 59
                                                    },
                                                    "end": {
                                                      "line": 56,
                                                      "column": 75
                                                    }
                                                  },
                                                  "name": "interactionPoint"
                                                },
                                                "computed": false
                                              }
                                            ],
                                            "leadingComments": null
                                          },
                                          "leadingComments": null
                                        },
                                        "consequent": {
                                          "type": "BlockStatement",
                                          "start": 2964,
                                          "end": 3159,
                                          "loc": {
                                            "start": {
                                              "line": 56,
                                              "column": 78
                                            },
                                            "end": {
                                              "line": 60,
                                              "column": 17
                                            }
                                          },
                                          "body": [
                                            {
                                              "type": "ExpressionStatement",
                                              "start": 3039,
                                              "end": 3093,
                                              "loc": {
                                                "start": {
                                                  "line": 58,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 58,
                                                  "column": 74
                                                }
                                              },
                                              "expression": {
                                                "type": "CallExpression",
                                                "start": 3039,
                                                "end": 3092,
                                                "loc": {
                                                  "start": {
                                                    "line": 58,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 58,
                                                    "column": 73
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 3039,
                                                  "end": 3079,
                                                  "loc": {
                                                    "start": {
                                                      "line": 58,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 58,
                                                      "column": 60
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 3039,
                                                    "end": 3074,
                                                    "loc": {
                                                      "start": {
                                                        "line": 58,
                                                        "column": 20
                                                      },
                                                      "end": {
                                                        "line": 58,
                                                        "column": 55
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "MemberExpression",
                                                      "start": 3039,
                                                      "end": 3057,
                                                      "loc": {
                                                        "start": {
                                                          "line": 58,
                                                          "column": 20
                                                        },
                                                        "end": {
                                                          "line": 58,
                                                          "column": 38
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "Identifier",
                                                        "start": 3039,
                                                        "end": 3047,
                                                        "loc": {
                                                          "start": {
                                                            "line": 58,
                                                            "column": 20
                                                          },
                                                          "end": {
                                                            "line": 58,
                                                            "column": 28
                                                          }
                                                        },
                                                        "name": "sketcher",
                                                        "leadingComments": null
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 3048,
                                                        "end": 3057,
                                                        "loc": {
                                                          "start": {
                                                            "line": 58,
                                                            "column": 29
                                                          },
                                                          "end": {
                                                            "line": 58,
                                                            "column": 38
                                                          }
                                                        },
                                                        "name": "modelData"
                                                      },
                                                      "computed": false,
                                                      "leadingComments": null
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 3058,
                                                      "end": 3074,
                                                      "loc": {
                                                        "start": {
                                                          "line": 58,
                                                          "column": 39
                                                        },
                                                        "end": {
                                                          "line": 58,
                                                          "column": 55
                                                        }
                                                      },
                                                      "name": "interactionPoint"
                                                    },
                                                    "computed": false,
                                                    "leadingComments": null
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 3075,
                                                    "end": 3079,
                                                    "loc": {
                                                      "start": {
                                                        "line": 58,
                                                        "column": 56
                                                      },
                                                      "end": {
                                                        "line": 58,
                                                        "column": 60
                                                      }
                                                    },
                                                    "name": "copy"
                                                  },
                                                  "computed": false,
                                                  "leadingComments": null
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 3080,
                                                    "end": 3091,
                                                    "loc": {
                                                      "start": {
                                                        "line": 58,
                                                        "column": 61
                                                      },
                                                      "end": {
                                                        "line": 58,
                                                        "column": 72
                                                      }
                                                    },
                                                    "name": "sketchPoint"
                                                  }
                                                ],
                                                "leadingComments": null
                                              },
                                              "leadingComments": [
                                                {
                                                  "type": "CommentLine",
                                                  "value": "TODO: await mouseMove handler?",
                                                  "start": 2986,
                                                  "end": 3018,
                                                  "loc": {
                                                    "start": {
                                                      "line": 57,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 57,
                                                      "column": 52
                                                    }
                                                  },
                                                  "range": [
                                                    2986,
                                                    3018
                                                  ]
                                                }
                                              ]
                                            },
                                            {
                                              "type": "ExpressionStatement",
                                              "start": 3114,
                                              "end": 3141,
                                              "loc": {
                                                "start": {
                                                  "line": 59,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 59,
                                                  "column": 47
                                                }
                                              },
                                              "expression": {
                                                "type": "CallExpression",
                                                "start": 3114,
                                                "end": 3140,
                                                "loc": {
                                                  "start": {
                                                    "line": 59,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 59,
                                                    "column": 46
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 3114,
                                                  "end": 3138,
                                                  "loc": {
                                                    "start": {
                                                      "line": 59,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 59,
                                                      "column": 44
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 3114,
                                                    "end": 3122,
                                                    "loc": {
                                                      "start": {
                                                        "line": 59,
                                                        "column": 20
                                                      },
                                                      "end": {
                                                        "line": 59,
                                                        "column": 28
                                                      }
                                                    },
                                                    "name": "sketcher"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 3123,
                                                    "end": 3138,
                                                    "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": 2804,
                                            "end": 2831,
                                            "loc": {
                                              "start": {
                                                "line": 54,
                                                "column": 36
                                              },
                                              "end": {
                                                "line": 54,
                                                "column": 63
                                              }
                                            },
                                            "range": [
                                              2804,
                                              2831
                                            ]
                                          },
                                          {
                                            "type": "CommentLine",
                                            "value": "if changed, call mouse move handler",
                                            "start": 2848,
                                            "end": 2885,
                                            "loc": {
                                              "start": {
                                                "line": 55,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 55,
                                                "column": 53
                                              }
                                            },
                                            "range": [
                                              2848,
                                              2885
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 3176,
                                        "end": 3195,
                                        "loc": {
                                          "start": {
                                            "line": 61,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 61,
                                            "column": 35
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 3176,
                                          "end": 3194,
                                          "loc": {
                                            "start": {
                                              "line": 61,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 61,
                                              "column": 34
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 3176,
                                            "end": 3192,
                                            "loc": {
                                              "start": {
                                                "line": 61,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 61,
                                                "column": 32
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 3176,
                                              "end": 3184,
                                              "loc": {
                                                "start": {
                                                  "line": 61,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 61,
                                                  "column": 24
                                                }
                                              },
                                              "name": "sketcher"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 3185,
                                              "end": 3192,
                                              "loc": {
                                                "start": {
                                                  "line": 61,
                                                  "column": 25
                                                },
                                                "end": {
                                                  "line": 61,
                                                  "column": 32
                                                }
                                              },
                                              "name": "refresh"
                                            },
                                            "computed": false
                                          },
                                          "arguments": []
                                        }
                                      }
                                    ]
                                  }
                                }
                              }
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3232,
                      "end": 3339,
                      "loc": {
                        "start": {
                          "line": 65,
                          "column": 8
                        },
                        "end": {
                          "line": 65,
                          "column": 115
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3232,
                        "end": 3338,
                        "loc": {
                          "start": {
                            "line": 65,
                            "column": 8
                          },
                          "end": {
                            "line": 65,
                            "column": 114
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3232,
                          "end": 3243,
                          "loc": {
                            "start": {
                              "line": 65,
                              "column": 8
                            },
                            "end": {
                              "line": 65,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3232,
                            "end": 3236,
                            "loc": {
                              "start": {
                                "line": 65,
                                "column": 8
                              },
                              "end": {
                                "line": 65,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3237,
                            "end": 3243,
                            "loc": {
                              "start": {
                                "line": 65,
                                "column": 13
                              },
                              "end": {
                                "line": 65,
                                "column": 19
                              }
                            },
                            "name": "__grid"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 3246,
                          "end": 3338,
                          "loc": {
                            "start": {
                              "line": 65,
                              "column": 22
                            },
                            "end": {
                              "line": 65,
                              "column": 114
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 3250,
                            "end": 3268,
                            "loc": {
                              "start": {
                                "line": 65,
                                "column": 26
                              },
                              "end": {
                                "line": 65,
                                "column": 44
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 3250,
                              "end": 3255,
                              "loc": {
                                "start": {
                                  "line": 65,
                                  "column": 26
                                },
                                "end": {
                                  "line": 65,
                                  "column": 31
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3256,
                              "end": 3268,
                              "loc": {
                                "start": {
                                  "line": 65,
                                  "column": 32
                                },
                                "end": {
                                  "line": 65,
                                  "column": 44
                                }
                              },
                              "name": "LineSegments"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "NewExpression",
                              "start": 3269,
                              "end": 3289,
                              "loc": {
                                "start": {
                                  "line": 65,
                                  "column": 45
                                },
                                "end": {
                                  "line": 65,
                                  "column": 65
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 3273,
                                "end": 3287,
                                "loc": {
                                  "start": {
                                    "line": 65,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 65,
                                    "column": 63
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 3273,
                                  "end": 3278,
                                  "loc": {
                                    "start": {
                                      "line": 65,
                                      "column": 49
                                    },
                                    "end": {
                                      "line": 65,
                                      "column": 54
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3279,
                                  "end": 3287,
                                  "loc": {
                                    "start": {
                                      "line": 65,
                                      "column": 55
                                    },
                                    "end": {
                                      "line": 65,
                                      "column": 63
                                    }
                                  },
                                  "name": "Geometry"
                                },
                                "computed": false
                              },
                              "arguments": []
                            },
                            {
                              "type": "NewExpression",
                              "start": 3291,
                              "end": 3337,
                              "loc": {
                                "start": {
                                  "line": 65,
                                  "column": 67
                                },
                                "end": {
                                  "line": 65,
                                  "column": 113
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 3295,
                                "end": 3318,
                                "loc": {
                                  "start": {
                                    "line": 65,
                                    "column": 71
                                  },
                                  "end": {
                                    "line": 65,
                                    "column": 94
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 3295,
                                  "end": 3300,
                                  "loc": {
                                    "start": {
                                      "line": 65,
                                      "column": 71
                                    },
                                    "end": {
                                      "line": 65,
                                      "column": 76
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3301,
                                  "end": 3318,
                                  "loc": {
                                    "start": {
                                      "line": 65,
                                      "column": 77
                                    },
                                    "end": {
                                      "line": 65,
                                      "column": 94
                                    }
                                  },
                                  "name": "LineBasicMaterial"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ObjectExpression",
                                  "start": 3319,
                                  "end": 3336,
                                  "loc": {
                                    "start": {
                                      "line": 65,
                                      "column": 95
                                    },
                                    "end": {
                                      "line": 65,
                                      "column": 112
                                    }
                                  },
                                  "properties": [
                                    {
                                      "type": "Property",
                                      "start": 3320,
                                      "end": 3335,
                                      "loc": {
                                        "start": {
                                          "line": 65,
                                          "column": 96
                                        },
                                        "end": {
                                          "line": 65,
                                          "column": 111
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 3320,
                                        "end": 3325,
                                        "loc": {
                                          "start": {
                                            "line": 65,
                                            "column": 96
                                          },
                                          "end": {
                                            "line": 65,
                                            "column": 101
                                          }
                                        },
                                        "name": "color"
                                      },
                                      "value": {
                                        "type": "Literal",
                                        "start": 3327,
                                        "end": 3335,
                                        "loc": {
                                          "start": {
                                            "line": 65,
                                            "column": 103
                                          },
                                          "end": {
                                            "line": 65,
                                            "column": 111
                                          }
                                        },
                                        "value": 5263440,
                                        "rawValue": 5263440,
                                        "raw": "0x505050"
                                      },
                                      "kind": "init"
                                    }
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3348,
                      "end": 3455,
                      "loc": {
                        "start": {
                          "line": 66,
                          "column": 8
                        },
                        "end": {
                          "line": 66,
                          "column": 115
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3348,
                        "end": 3454,
                        "loc": {
                          "start": {
                            "line": 66,
                            "column": 8
                          },
                          "end": {
                            "line": 66,
                            "column": 114
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3348,
                          "end": 3359,
                          "loc": {
                            "start": {
                              "line": 66,
                              "column": 8
                            },
                            "end": {
                              "line": 66,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3348,
                            "end": 3352,
                            "loc": {
                              "start": {
                                "line": 66,
                                "column": 8
                              },
                              "end": {
                                "line": 66,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3353,
                            "end": 3359,
                            "loc": {
                              "start": {
                                "line": 66,
                                "column": 13
                              },
                              "end": {
                                "line": 66,
                                "column": 19
                              }
                            },
                            "name": "__axis"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 3362,
                          "end": 3454,
                          "loc": {
                            "start": {
                              "line": 66,
                              "column": 22
                            },
                            "end": {
                              "line": 66,
                              "column": 114
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 3366,
                            "end": 3384,
                            "loc": {
                              "start": {
                                "line": 66,
                                "column": 26
                              },
                              "end": {
                                "line": 66,
                                "column": 44
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 3366,
                              "end": 3371,
                              "loc": {
                                "start": {
                                  "line": 66,
                                  "column": 26
                                },
                                "end": {
                                  "line": 66,
                                  "column": 31
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3372,
                              "end": 3384,
                              "loc": {
                                "start": {
                                  "line": 66,
                                  "column": 32
                                },
                                "end": {
                                  "line": 66,
                                  "column": 44
                                }
                              },
                              "name": "LineSegments"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "NewExpression",
                              "start": 3385,
                              "end": 3405,
                              "loc": {
                                "start": {
                                  "line": 66,
                                  "column": 45
                                },
                                "end": {
                                  "line": 66,
                                  "column": 65
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 3389,
                                "end": 3403,
                                "loc": {
                                  "start": {
                                    "line": 66,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 66,
                                    "column": 63
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 3389,
                                  "end": 3394,
                                  "loc": {
                                    "start": {
                                      "line": 66,
                                      "column": 49
                                    },
                                    "end": {
                                      "line": 66,
                                      "column": 54
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3395,
                                  "end": 3403,
                                  "loc": {
                                    "start": {
                                      "line": 66,
                                      "column": 55
                                    },
                                    "end": {
                                      "line": 66,
                                      "column": 63
                                    }
                                  },
                                  "name": "Geometry"
                                },
                                "computed": false
                              },
                              "arguments": []
                            },
                            {
                              "type": "NewExpression",
                              "start": 3407,
                              "end": 3453,
                              "loc": {
                                "start": {
                                  "line": 66,
                                  "column": 67
                                },
                                "end": {
                                  "line": 66,
                                  "column": 113
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 3411,
                                "end": 3434,
                                "loc": {
                                  "start": {
                                    "line": 66,
                                    "column": 71
                                  },
                                  "end": {
                                    "line": 66,
                                    "column": 94
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 3411,
                                  "end": 3416,
                                  "loc": {
                                    "start": {
                                      "line": 66,
                                      "column": 71
                                    },
                                    "end": {
                                      "line": 66,
                                      "column": 76
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3417,
                                  "end": 3434,
                                  "loc": {
                                    "start": {
                                      "line": 66,
                                      "column": 77
                                    },
                                    "end": {
                                      "line": 66,
                                      "column": 94
                                    }
                                  },
                                  "name": "LineBasicMaterial"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ObjectExpression",
                                  "start": 3435,
                                  "end": 3452,
                                  "loc": {
                                    "start": {
                                      "line": 66,
                                      "column": 95
                                    },
                                    "end": {
                                      "line": 66,
                                      "column": 112
                                    }
                                  },
                                  "properties": [
                                    {
                                      "type": "Property",
                                      "start": 3436,
                                      "end": 3451,
                                      "loc": {
                                        "start": {
                                          "line": 66,
                                          "column": 96
                                        },
                                        "end": {
                                          "line": 66,
                                          "column": 111
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 3436,
                                        "end": 3441,
                                        "loc": {
                                          "start": {
                                            "line": 66,
                                            "column": 96
                                          },
                                          "end": {
                                            "line": 66,
                                            "column": 101
                                          }
                                        },
                                        "name": "color"
                                      },
                                      "value": {
                                        "type": "Literal",
                                        "start": 3443,
                                        "end": 3451,
                                        "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": 3464,
                          "end": 3538,
                          "loc": {
                            "start": {
                              "line": 67,
                              "column": 8
                            },
                            "end": {
                              "line": 67,
                              "column": 82
                            }
                          },
                          "range": [
                            3464,
                            3538
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3547,
                      "end": 3581,
                      "loc": {
                        "start": {
                          "line": 68,
                          "column": 8
                        },
                        "end": {
                          "line": 68,
                          "column": 42
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3547,
                        "end": 3580,
                        "loc": {
                          "start": {
                            "line": 68,
                            "column": 8
                          },
                          "end": {
                            "line": 68,
                            "column": 41
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3547,
                          "end": 3572,
                          "loc": {
                            "start": {
                              "line": 68,
                              "column": 8
                            },
                            "end": {
                              "line": 68,
                              "column": 33
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 3547,
                            "end": 3558,
                            "loc": {
                              "start": {
                                "line": 68,
                                "column": 8
                              },
                              "end": {
                                "line": 68,
                                "column": 19
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 3547,
                              "end": 3551,
                              "loc": {
                                "start": {
                                  "line": 68,
                                  "column": 8
                                },
                                "end": {
                                  "line": 68,
                                  "column": 12
                                }
                              },
                              "leadingComments": null
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3552,
                              "end": 3558,
                              "loc": {
                                "start": {
                                  "line": 68,
                                  "column": 13
                                },
                                "end": {
                                  "line": 68,
                                  "column": 19
                                }
                              },
                              "name": "__grid"
                            },
                            "computed": false,
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3559,
                            "end": 3572,
                            "loc": {
                              "start": {
                                "line": 68,
                                "column": 20
                              },
                              "end": {
                                "line": 68,
                                "column": 33
                              }
                            },
                            "name": "frustumCulled"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "Literal",
                          "start": 3575,
                          "end": 3580,
                          "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": 3464,
                          "end": 3538,
                          "loc": {
                            "start": {
                              "line": 67,
                              "column": 8
                            },
                            "end": {
                              "line": 67,
                              "column": 82
                            }
                          },
                          "range": [
                            3464,
                            3538
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3590,
                      "end": 3624,
                      "loc": {
                        "start": {
                          "line": 69,
                          "column": 8
                        },
                        "end": {
                          "line": 69,
                          "column": 42
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3590,
                        "end": 3623,
                        "loc": {
                          "start": {
                            "line": 69,
                            "column": 8
                          },
                          "end": {
                            "line": 69,
                            "column": 41
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3590,
                          "end": 3615,
                          "loc": {
                            "start": {
                              "line": 69,
                              "column": 8
                            },
                            "end": {
                              "line": 69,
                              "column": 33
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 3590,
                            "end": 3601,
                            "loc": {
                              "start": {
                                "line": 69,
                                "column": 8
                              },
                              "end": {
                                "line": 69,
                                "column": 19
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 3590,
                              "end": 3594,
                              "loc": {
                                "start": {
                                  "line": 69,
                                  "column": 8
                                },
                                "end": {
                                  "line": 69,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3595,
                              "end": 3601,
                              "loc": {
                                "start": {
                                  "line": 69,
                                  "column": 13
                                },
                                "end": {
                                  "line": 69,
                                  "column": 19
                                }
                              },
                              "name": "__axis"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3602,
                            "end": 3615,
                            "loc": {
                              "start": {
                                "line": 69,
                                "column": 20
                              },
                              "end": {
                                "line": 69,
                                "column": 33
                              }
                            },
                            "name": "frustumCulled"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 3618,
                          "end": 3623,
                          "loc": {
                            "start": {
                              "line": 69,
                              "column": 36
                            },
                            "end": {
                              "line": 69,
                              "column": 41
                            }
                          },
                          "value": false,
                          "rawValue": false,
                          "raw": "false"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3634,
                      "end": 3675,
                      "loc": {
                        "start": {
                          "line": 71,
                          "column": 8
                        },
                        "end": {
                          "line": 71,
                          "column": 49
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3634,
                        "end": 3674,
                        "loc": {
                          "start": {
                            "line": 71,
                            "column": 8
                          },
                          "end": {
                            "line": 71,
                            "column": 48
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3634,
                          "end": 3651,
                          "loc": {
                            "start": {
                              "line": 71,
                              "column": 8
                            },
                            "end": {
                              "line": 71,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3634,
                            "end": 3638,
                            "loc": {
                              "start": {
                                "line": 71,
                                "column": 8
                              },
                              "end": {
                                "line": 71,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3639,
                            "end": 3651,
                            "loc": {
                              "start": {
                                "line": 71,
                                "column": 13
                              },
                              "end": {
                                "line": 71,
                                "column": 25
                              }
                            },
                            "name": "__dimensions"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 3654,
                          "end": 3674,
                          "loc": {
                            "start": {
                              "line": 71,
                              "column": 28
                            },
                            "end": {
                              "line": 71,
                              "column": 48
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 3658,
                            "end": 3672,
                            "loc": {
                              "start": {
                                "line": 71,
                                "column": 32
                              },
                              "end": {
                                "line": 71,
                                "column": 46
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 3658,
                              "end": 3663,
                              "loc": {
                                "start": {
                                  "line": 71,
                                  "column": 32
                                },
                                "end": {
                                  "line": 71,
                                  "column": 37
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3664,
                              "end": 3672,
                              "loc": {
                                "start": {
                                  "line": 71,
                                  "column": 38
                                },
                                "end": {
                                  "line": 71,
                                  "column": 46
                                }
                              },
                              "name": "Object3D"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "some default values",
                          "start": 3685,
                          "end": 3706,
                          "loc": {
                            "start": {
                              "line": 73,
                              "column": 8
                            },
                            "end": {
                              "line": 73,
                              "column": 29
                            }
                          },
                          "range": [
                            3685,
                            3706
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3715,
                      "end": 3734,
                      "loc": {
                        "start": {
                          "line": 74,
                          "column": 8
                        },
                        "end": {
                          "line": 74,
                          "column": 27
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3715,
                        "end": 3733,
                        "loc": {
                          "start": {
                            "line": 74,
                            "column": 8
                          },
                          "end": {
                            "line": 74,
                            "column": 26
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3715,
                          "end": 3729,
                          "loc": {
                            "start": {
                              "line": 74,
                              "column": 8
                            },
                            "end": {
                              "line": 74,
                              "column": 22
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3715,
                            "end": 3719,
                            "loc": {
                              "start": {
                                "line": 74,
                                "column": 8
                              },
                              "end": {
                                "line": 74,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3720,
                            "end": 3729,
                            "loc": {
                              "start": {
                                "line": 74,
                                "column": 13
                              },
                              "end": {
                                "line": 74,
                                "column": 22
                              }
                            },
                            "name": "gridScale"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "Literal",
                          "start": 3732,
                          "end": 3733,
                          "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": 3685,
                          "end": 3706,
                          "loc": {
                            "start": {
                              "line": 73,
                              "column": 8
                            },
                            "end": {
                              "line": 73,
                              "column": 29
                            }
                          },
                          "range": [
                            3685,
                            3706
                          ]
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " empirical number for nice looking",
                          "start": 3735,
                          "end": 3771,
                          "loc": {
                            "start": {
                              "line": 74,
                              "column": 28
                            },
                            "end": {
                              "line": 74,
                              "column": 64
                            }
                          },
                          "range": [
                            3735,
                            3771
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3780,
                      "end": 3801,
                      "loc": {
                        "start": {
                          "line": 75,
                          "column": 8
                        },
                        "end": {
                          "line": 75,
                          "column": 29
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3780,
                        "end": 3800,
                        "loc": {
                          "start": {
                            "line": 75,
                            "column": 8
                          },
                          "end": {
                            "line": 75,
                            "column": 28
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3780,
                          "end": 3793,
                          "loc": {
                            "start": {
                              "line": 75,
                              "column": 8
                            },
                            "end": {
                              "line": 75,
                              "column": 21
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3780,
                            "end": 3784,
                            "loc": {
                              "start": {
                                "line": 75,
                                "column": 8
                              },
                              "end": {
                                "line": 75,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3785,
                            "end": 3793,
                            "loc": {
                              "start": {
                                "line": 75,
                                "column": 13
                              },
                              "end": {
                                "line": 75,
                                "column": 21
                              }
                            },
                            "name": "gridSize"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "Literal",
                          "start": 3796,
                          "end": 3800,
                          "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": 3735,
                          "end": 3771,
                          "loc": {
                            "start": {
                              "line": 74,
                              "column": 28
                            },
                            "end": {
                              "line": 74,
                              "column": 64
                            }
                          },
                          "range": [
                            3735,
                            3771
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3810,
                      "end": 3840,
                      "loc": {
                        "start": {
                          "line": 76,
                          "column": 8
                        },
                        "end": {
                          "line": 76,
                          "column": 38
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3810,
                        "end": 3839,
                        "loc": {
                          "start": {
                            "line": 76,
                            "column": 8
                          },
                          "end": {
                            "line": 76,
                            "column": 37
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3810,
                          "end": 3833,
                          "loc": {
                            "start": {
                              "line": 76,
                              "column": 8
                            },
                            "end": {
                              "line": 76,
                              "column": 31
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3810,
                            "end": 3814,
                            "loc": {
                              "start": {
                                "line": 76,
                                "column": 8
                              },
                              "end": {
                                "line": 76,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3815,
                            "end": 3833,
                            "loc": {
                              "start": {
                                "line": 76,
                                "column": 13
                              },
                              "end": {
                                "line": 76,
                                "column": 31
                              }
                            },
                            "name": "snappingSizeInGrid"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 3836,
                          "end": 3839,
                          "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": 3841,
                          "end": 3865,
                          "loc": {
                            "start": {
                              "line": 76,
                              "column": 39
                            },
                            "end": {
                              "line": 76,
                              "column": 63
                            }
                          },
                          "range": [
                            3841,
                            3865
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3874,
                      "end": 3918,
                      "loc": {
                        "start": {
                          "line": 77,
                          "column": 8
                        },
                        "end": {
                          "line": 77,
                          "column": 52
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3874,
                        "end": 3917,
                        "loc": {
                          "start": {
                            "line": 77,
                            "column": 8
                          },
                          "end": {
                            "line": 77,
                            "column": 51
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3874,
                          "end": 3894,
                          "loc": {
                            "start": {
                              "line": 77,
                              "column": 8
                            },
                            "end": {
                              "line": 77,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3874,
                            "end": 3878,
                            "loc": {
                              "start": {
                                "line": 77,
                                "column": 8
                              },
                              "end": {
                                "line": 77,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3879,
                            "end": 3894,
                            "loc": {
                              "start": {
                                "line": 77,
                                "column": 13
                              },
                              "end": {
                                "line": 77,
                                "column": 28
                              }
                            },
                            "name": "pointSizeInGrid"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "BinaryExpression",
                          "start": 3897,
                          "end": 3917,
                          "loc": {
                            "start": {
                              "line": 77,
                              "column": 31
                            },
                            "end": {
                              "line": 77,
                              "column": 51
                            }
                          },
                          "left": {
                            "type": "Literal",
                            "start": 3897,
                            "end": 3900,
                            "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": 3903,
                            "end": 3917,
                            "loc": {
                              "start": {
                                "line": 77,
                                "column": 37
                              },
                              "end": {
                                "line": 77,
                                "column": 51
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 3903,
                              "end": 3907,
                              "loc": {
                                "start": {
                                  "line": 77,
                                  "column": 37
                                },
                                "end": {
                                  "line": 77,
                                  "column": 41
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3908,
                              "end": 3917,
                              "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": 3841,
                          "end": 3865,
                          "loc": {
                            "start": {
                              "line": 76,
                              "column": 39
                            },
                            "end": {
                              "line": 76,
                              "column": 63
                            }
                          },
                          "range": [
                            3841,
                            3865
                          ]
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " 10% of grid cell size",
                          "start": 3919,
                          "end": 3943,
                          "loc": {
                            "start": {
                              "line": 77,
                              "column": 53
                            },
                            "end": {
                              "line": 77,
                              "column": 77
                            }
                          },
                          "range": [
                            3919,
                            3943
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3952,
                      "end": 3981,
                      "loc": {
                        "start": {
                          "line": 78,
                          "column": 8
                        },
                        "end": {
                          "line": 78,
                          "column": 37
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3952,
                        "end": 3980,
                        "loc": {
                          "start": {
                            "line": 78,
                            "column": 8
                          },
                          "end": {
                            "line": 78,
                            "column": 36
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3952,
                          "end": 3974,
                          "loc": {
                            "start": {
                              "line": 78,
                              "column": 8
                            },
                            "end": {
                              "line": 78,
                              "column": 30
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3952,
                            "end": 3956,
                            "loc": {
                              "start": {
                                "line": 78,
                                "column": 8
                              },
                              "end": {
                                "line": 78,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3957,
                            "end": 3974,
                            "loc": {
                              "start": {
                                "line": 78,
                                "column": 13
                              },
                              "end": {
                                "line": 78,
                                "column": 30
                              }
                            },
                            "name": "chosenItemOpacity"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "Literal",
                          "start": 3977,
                          "end": 3980,
                          "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": 3919,
                          "end": 3943,
                          "loc": {
                            "start": {
                              "line": 77,
                              "column": 53
                            },
                            "end": {
                              "line": 77,
                              "column": 77
                            }
                          },
                          "range": [
                            3919,
                            3943
                          ]
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "initialize vertex buffers of grid+axis (must be before first render)",
                          "start": 3991,
                          "end": 4061,
                          "loc": {
                            "start": {
                              "line": 80,
                              "column": 8
                            },
                            "end": {
                              "line": 80,
                              "column": 78
                            }
                          },
                          "range": [
                            3991,
                            4061
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 4070,
                      "end": 4088,
                      "loc": {
                        "start": {
                          "line": 81,
                          "column": 8
                        },
                        "end": {
                          "line": 81,
                          "column": 26
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 4070,
                        "end": 4087,
                        "loc": {
                          "start": {
                            "line": 81,
                            "column": 8
                          },
                          "end": {
                            "line": 81,
                            "column": 25
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 4070,
                          "end": 4085,
                          "loc": {
                            "start": {
                              "line": 81,
                              "column": 8
                            },
                            "end": {
                              "line": 81,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 4070,
                            "end": 4074,
                            "loc": {
                              "start": {
                                "line": 81,
                                "column": 8
                              },
                              "end": {
                                "line": 81,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4075,
                            "end": 4085,
                            "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": 3991,
                          "end": 4061,
                          "loc": {
                            "start": {
                              "line": 80,
                              "column": 8
                            },
                            "end": {
                              "line": 80,
                              "column": 78
                            }
                          },
                          "range": [
                            3991,
                            4061
                          ]
                        }
                      ]
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 4100,
              "end": 4261,
              "loc": {
                "start": {
                  "line": 84,
                  "column": 4
                },
                "end": {
                  "line": 90,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 4107,
                "end": 4119,
                "loc": {
                  "start": {
                    "line": 84,
                    "column": 11
                  },
                  "end": {
                    "line": 84,
                    "column": 23
                  }
                },
                "name": "FindSketchOf"
              },
              "static": true,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 4119,
                "end": 4261,
                "loc": {
                  "start": {
                    "line": 84,
                    "column": 23
                  },
                  "end": {
                    "line": 90,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 4120,
                    "end": 4123,
                    "loc": {
                      "start": {
                        "line": 84,
                        "column": 24
                      },
                      "end": {
                        "line": 84,
                        "column": 27
                      }
                    },
                    "name": "obj"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 4125,
                  "end": 4261,
                  "loc": {
                    "start": {
                      "line": 84,
                      "column": 29
                    },
                    "end": {
                      "line": 90,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "WhileStatement",
                      "start": 4135,
                      "end": 4255,
                      "loc": {
                        "start": {
                          "line": 85,
                          "column": 8
                        },
                        "end": {
                          "line": 89,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "Identifier",
                        "start": 4142,
                        "end": 4145,
                        "loc": {
                          "start": {
                            "line": 85,
                            "column": 15
                          },
                          "end": {
                            "line": 85,
                            "column": 18
                          }
                        },
                        "name": "obj"
                      },
                      "body": {
                        "type": "BlockStatement",
                        "start": 4147,
                        "end": 4255,
                        "loc": {
                          "start": {
                            "line": 85,
                            "column": 20
                          },
                          "end": {
                            "line": 89,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "IfStatement",
                            "start": 4161,
                            "end": 4215,
                            "loc": {
                              "start": {
                                "line": 86,
                                "column": 12
                              },
                              "end": {
                                "line": 87,
                                "column": 27
                              }
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 4165,
                              "end": 4186,
                              "loc": {
                                "start": {
                                  "line": 86,
                                  "column": 16
                                },
                                "end": {
                                  "line": 86,
                                  "column": 37
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 4165,
                                "end": 4168,
                                "loc": {
                                  "start": {
                                    "line": 86,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 86,
                                    "column": 19
                                  }
                                },
                                "name": "obj"
                              },
                              "operator": "instanceof",
                              "right": {
                                "type": "Identifier",
                                "start": 4180,
                                "end": 4186,
                                "loc": {
                                  "start": {
                                    "line": 86,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 86,
                                    "column": 37
                                  }
                                },
                                "name": "Sketch"
                              }
                            },
                            "consequent": {
                              "type": "ReturnStatement",
                              "start": 4204,
                              "end": 4215,
                              "loc": {
                                "start": {
                                  "line": 87,
                                  "column": 16
                                },
                                "end": {
                                  "line": 87,
                                  "column": 27
                                }
                              },
                              "argument": {
                                "type": "Identifier",
                                "start": 4211,
                                "end": 4214,
                                "loc": {
                                  "start": {
                                    "line": 87,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 87,
                                    "column": 26
                                  }
                                },
                                "name": "obj"
                              }
                            },
                            "alternate": null
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 4228,
                            "end": 4245,
                            "loc": {
                              "start": {
                                "line": 88,
                                "column": 12
                              },
                              "end": {
                                "line": 88,
                                "column": 29
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 4228,
                              "end": 4244,
                              "loc": {
                                "start": {
                                  "line": 88,
                                  "column": 12
                                },
                                "end": {
                                  "line": 88,
                                  "column": 28
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "Identifier",
                                "start": 4228,
                                "end": 4231,
                                "loc": {
                                  "start": {
                                    "line": 88,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 88,
                                    "column": 15
                                  }
                                },
                                "name": "obj"
                              },
                              "right": {
                                "type": "MemberExpression",
                                "start": 4234,
                                "end": 4244,
                                "loc": {
                                  "start": {
                                    "line": 88,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 88,
                                    "column": 28
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 4234,
                                  "end": 4237,
                                  "loc": {
                                    "start": {
                                      "line": 88,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 88,
                                      "column": 21
                                    }
                                  },
                                  "name": "obj"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 4238,
                                  "end": 4244,
                                  "loc": {
                                    "start": {
                                      "line": 88,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 88,
                                      "column": 28
                                    }
                                  },
                                  "name": "parent"
                                },
                                "computed": false
                              }
                            }
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 4267,
              "end": 4446,
              "loc": {
                "start": {
                  "line": 92,
                  "column": 4
                },
                "end": {
                  "line": 98,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 4274,
                "end": 4289,
                "loc": {
                  "start": {
                    "line": 92,
                    "column": 11
                  },
                  "end": {
                    "line": 92,
                    "column": 26
                  }
                },
                "name": "FindSketchSetOf"
              },
              "static": true,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 4289,
                "end": 4446,
                "loc": {
                  "start": {
                    "line": 92,
                    "column": 26
                  },
                  "end": {
                    "line": 98,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 4290,
                    "end": 4293,
                    "loc": {
                      "start": {
                        "line": 92,
                        "column": 27
                      },
                      "end": {
                        "line": 92,
                        "column": 30
                      }
                    },
                    "name": "obj"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 4295,
                  "end": 4446,
                  "loc": {
                    "start": {
                      "line": 92,
                      "column": 32
                    },
                    "end": {
                      "line": 98,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 4305,
                      "end": 4316,
                      "loc": {
                        "start": {
                          "line": 93,
                          "column": 8
                        },
                        "end": {
                          "line": 93,
                          "column": 19
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 4309,
                          "end": 4315,
                          "loc": {
                            "start": {
                              "line": 93,
                              "column": 12
                            },
                            "end": {
                              "line": 93,
                              "column": 18
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 4309,
                            "end": 4315,
                            "loc": {
                              "start": {
                                "line": 93,
                                "column": 12
                              },
                              "end": {
                                "line": 93,
                                "column": 18
                              }
                            },
                            "name": "result"
                          },
                          "init": null
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 4325,
                      "end": 4417,
                      "loc": {
                        "start": {
                          "line": 94,
                          "column": 8
                        },
                        "end": {
                          "line": 96,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 4325,
                        "end": 4416,
                        "loc": {
                          "start": {
                            "line": 94,
                            "column": 8
                          },
                          "end": {
                            "line": 96,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 4325,
                          "end": 4346,
                          "loc": {
                            "start": {
                              "line": 94,
                              "column": 8
                            },
                            "end": {
                              "line": 94,
                              "column": 29
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 4325,
                            "end": 4328,
                            "loc": {
                              "start": {
                                "line": 94,
                                "column": 8
                              },
                              "end": {
                                "line": 94,
                                "column": 11
                              }
                            },
                            "name": "obj"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4329,
                            "end": 4346,
                            "loc": {
                              "start": {
                                "line": 94,
                                "column": 12
                              },
                              "end": {
                                "line": 94,
                                "column": 29
                              }
                            },
                            "name": "traverseAncestors"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 4347,
                            "end": 4415,
                            "loc": {
                              "start": {
                                "line": 94,
                                "column": 30
                              },
                              "end": {
                                "line": 96,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 4347,
                                "end": 4348,
                                "loc": {
                                  "start": {
                                    "line": 94,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 94,
                                    "column": 31
                                  }
                                },
                                "name": "s"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 4352,
                              "end": 4415,
                              "loc": {
                                "start": {
                                  "line": 94,
                                  "column": 35
                                },
                                "end": {
                                  "line": 96,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 4366,
                                  "end": 4405,
                                  "loc": {
                                    "start": {
                                      "line": 95,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 95,
                                      "column": 51
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 4366,
                                    "end": 4404,
                                    "loc": {
                                      "start": {
                                        "line": 95,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 95,
                                        "column": 50
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "Identifier",
                                      "start": 4366,
                                      "end": 4372,
                                      "loc": {
                                        "start": {
                                          "line": 95,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 95,
                                          "column": 18
                                        }
                                      },
                                      "name": "result"
                                    },
                                    "right": {
                                      "type": "LogicalExpression",
                                      "start": 4375,
                                      "end": 4404,
                                      "loc": {
                                        "start": {
                                          "line": 95,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 95,
                                          "column": 50
                                        }
                                      },
                                      "left": {
                                        "type": "Identifier",
                                        "start": 4375,
                                        "end": 4381,
                                        "loc": {
                                          "start": {
                                            "line": 95,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 95,
                                            "column": 27
                                          }
                                        },
                                        "name": "result"
                                      },
                                      "operator": "||",
                                      "right": {
                                        "type": "MemberExpression",
                                        "start": 4385,
                                        "end": 4404,
                                        "loc": {
                                          "start": {
                                            "line": 95,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 95,
                                            "column": 50
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 4385,
                                          "end": 4394,
                                          "loc": {
                                            "start": {
                                              "line": 95,
                                              "column": 31
                                            },
                                            "end": {
                                              "line": 95,
                                              "column": 40
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 4385,
                                            "end": 4386,
                                            "loc": {
                                              "start": {
                                                "line": 95,
                                                "column": 31
                                              },
                                              "end": {
                                                "line": 95,
                                                "column": 32
                                              }
                                            },
                                            "name": "s"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 4387,
                                            "end": 4394,
                                            "loc": {
                                              "start": {
                                                "line": 95,
                                                "column": 33
                                              },
                                              "end": {
                                                "line": 95,
                                                "column": 40
                                              }
                                            },
                                            "name": "members"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 4395,
                                          "end": 4404,
                                          "loc": {
                                            "start": {
                                              "line": 95,
                                              "column": 41
                                            },
                                            "end": {
                                              "line": 95,
                                              "column": 50
                                            }
                                          },
                                          "name": "SketchSet"
                                        },
                                        "computed": false
                                      }
                                    }
                                  }
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 4426,
                      "end": 4440,
                      "loc": {
                        "start": {
                          "line": 97,
                          "column": 8
                        },
                        "end": {
                          "line": 97,
                          "column": 22
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 4433,
                        "end": 4439,
                        "loc": {
                          "start": {
                            "line": 97,
                            "column": 15
                          },
                          "end": {
                            "line": 97,
                            "column": 21
                          }
                        },
                        "name": "result"
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 4452,
              "end": 4529,
              "loc": {
                "start": {
                  "line": 100,
                  "column": 4
                },
                "end": {
                  "line": 102,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 4452,
                "end": 4459,
                "loc": {
                  "start": {
                    "line": 100,
                    "column": 4
                  },
                  "end": {
                    "line": 100,
                    "column": 11
                  }
                },
                "name": "getPart"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 4459,
                "end": 4529,
                "loc": {
                  "start": {
                    "line": 100,
                    "column": 11
                  },
                  "end": {
                    "line": 102,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 4462,
                  "end": 4529,
                  "loc": {
                    "start": {
                      "line": 100,
                      "column": 14
                    },
                    "end": {
                      "line": 102,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 4472,
                      "end": 4498,
                      "loc": {
                        "start": {
                          "line": 101,
                          "column": 8
                        },
                        "end": {
                          "line": 101,
                          "column": 34
                        }
                      },
                      "argument": {
                        "type": "MemberExpression",
                        "start": 4479,
                        "end": 4497,
                        "loc": {
                          "start": {
                            "line": 101,
                            "column": 15
                          },
                          "end": {
                            "line": 101,
                            "column": 33
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 4479,
                          "end": 4490,
                          "loc": {
                            "start": {
                              "line": 101,
                              "column": 15
                            },
                            "end": {
                              "line": 101,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 4479,
                            "end": 4483,
                            "loc": {
                              "start": {
                                "line": 101,
                                "column": 15
                              },
                              "end": {
                                "line": 101,
                                "column": 19
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4484,
                            "end": 4490,
                            "loc": {
                              "start": {
                                "line": 101,
                                "column": 20
                              },
                              "end": {
                                "line": 101,
                                "column": 26
                              }
                            },
                            "name": "parent"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 4491,
                          "end": 4497,
                          "loc": {
                            "start": {
                              "line": 101,
                              "column": 27
                            },
                            "end": {
                              "line": 101,
                              "column": 33
                            }
                          },
                          "name": "parent"
                        },
                        "computed": false
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " Part.SketchSet.Sketch",
                          "start": 4499,
                          "end": 4523,
                          "loc": {
                            "start": {
                              "line": 101,
                              "column": 35
                            },
                            "end": {
                              "line": 101,
                              "column": 59
                            }
                          },
                          "range": [
                            4499,
                            4523
                          ]
                        }
                      ]
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " Physically add objects to the sketch (in contrast to addAuxObject)",
                  "start": 4535,
                  "end": 4604,
                  "loc": {
                    "start": {
                      "line": 104,
                      "column": 4
                    },
                    "end": {
                      "line": 104,
                      "column": 73
                    }
                  },
                  "range": [
                    4535,
                    4604
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " If some objects were previously added with addAuxObject, automatically remove them from aux objects",
                  "start": 4609,
                  "end": 4711,
                  "loc": {
                    "start": {
                      "line": 105,
                      "column": 4
                    },
                    "end": {
                      "line": 105,
                      "column": 106
                    }
                  },
                  "range": [
                    4609,
                    4711
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " possible options:",
                  "start": 4716,
                  "end": 4736,
                  "loc": {
                    "start": {
                      "line": 106,
                      "column": 4
                    },
                    "end": {
                      "line": 106,
                      "column": 24
                    }
                  },
                  "range": [
                    4716,
                    4736
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": "   onServer (default: true) - whether to send commands to the server.",
                  "start": 4741,
                  "end": 4812,
                  "loc": {
                    "start": {
                      "line": 107,
                      "column": 4
                    },
                    "end": {
                      "line": 107,
                      "column": 75
                    }
                  },
                  "range": [
                    4741,
                    4812
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": "   onClient (default: true) - whether to add objects to children",
                  "start": 4817,
                  "end": 4883,
                  "loc": {
                    "start": {
                      "line": 108,
                      "column": 4
                    },
                    "end": {
                      "line": 108,
                      "column": 70
                    }
                  },
                  "range": [
                    4817,
                    4883
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": "   autoconstraint (default: false) - if true, then implied constraints are generated if neccessary.",
                  "start": 4888,
                  "end": 4989,
                  "loc": {
                    "start": {
                      "line": 109,
                      "column": 4
                    },
                    "end": {
                      "line": 109,
                      "column": 105
                    }
                  },
                  "range": [
                    4888,
                    4989
                  ]
                },
                {
                  "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": 4994,
                  "end": 5139,
                  "loc": {
                    "start": {
                      "line": 110,
                      "column": 4
                    },
                    "end": {
                      "line": 110,
                      "column": 149
                    }
                  },
                  "range": [
                    4994,
                    5139
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 5144,
              "end": 7070,
              "loc": {
                "start": {
                  "line": 111,
                  "column": 4
                },
                "end": {
                  "line": 152,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 5144,
                "end": 5155,
                "loc": {
                  "start": {
                    "line": 111,
                    "column": 4
                  },
                  "end": {
                    "line": 111,
                    "column": 15
                  }
                },
                "name": "addToSketch",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 5155,
                "end": 7070,
                "loc": {
                  "start": {
                    "line": 111,
                    "column": 15
                  },
                  "end": {
                    "line": 152,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 5156,
                    "end": 5163,
                    "loc": {
                      "start": {
                        "line": 111,
                        "column": 16
                      },
                      "end": {
                        "line": 111,
                        "column": 23
                      }
                    },
                    "name": "objects"
                  },
                  {
                    "type": "AssignmentPattern",
                    "start": 5165,
                    "end": 5177,
                    "loc": {
                      "start": {
                        "line": 111,
                        "column": 25
                      },
                      "end": {
                        "line": 111,
                        "column": 37
                      }
                    },
                    "operator": "=",
                    "left": {
                      "type": "Identifier",
                      "start": 5165,
                      "end": 5172,
                      "loc": {
                        "start": {
                          "line": 111,
                          "column": 25
                        },
                        "end": {
                          "line": 111,
                          "column": 32
                        }
                      },
                      "name": "options"
                    },
                    "right": {
                      "type": "ObjectExpression",
                      "start": 5175,
                      "end": 5177,
                      "loc": {
                        "start": {
                          "line": 111,
                          "column": 35
                        },
                        "end": {
                          "line": 111,
                          "column": 37
                        }
                      },
                      "properties": []
                    }
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 5179,
                  "end": 7070,
                  "loc": {
                    "start": {
                      "line": 111,
                      "column": 39
                    },
                    "end": {
                      "line": 152,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 5189,
                      "end": 5249,
                      "loc": {
                        "start": {
                          "line": 112,
                          "column": 8
                        },
                        "end": {
                          "line": 112,
                          "column": 68
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 5193,
                        "end": 5223,
                        "loc": {
                          "start": {
                            "line": 112,
                            "column": 12
                          },
                          "end": {
                            "line": 112,
                            "column": 42
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 5193,
                          "end": 5209,
                          "loc": {
                            "start": {
                              "line": 112,
                              "column": 12
                            },
                            "end": {
                              "line": 112,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 5193,
                            "end": 5200,
                            "loc": {
                              "start": {
                                "line": 112,
                                "column": 12
                              },
                              "end": {
                                "line": 112,
                                "column": 19
                              }
                            },
                            "name": "options"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 5201,
                            "end": 5209,
                            "loc": {
                              "start": {
                                "line": 112,
                                "column": 20
                              },
                              "end": {
                                "line": 112,
                                "column": 28
                              }
                            },
                            "name": "onServer"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Identifier",
                          "start": 5214,
                          "end": 5223,
                          "loc": {
                            "start": {
                              "line": 112,
                              "column": 33
                            },
                            "end": {
                              "line": 112,
                              "column": 42
                            }
                          },
                          "name": "undefined"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 5225,
                        "end": 5249,
                        "loc": {
                          "start": {
                            "line": 112,
                            "column": 44
                          },
                          "end": {
                            "line": 112,
                            "column": 68
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 5225,
                          "end": 5248,
                          "loc": {
                            "start": {
                              "line": 112,
                              "column": 44
                            },
                            "end": {
                              "line": 112,
                              "column": 67
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 5225,
                            "end": 5241,
                            "loc": {
                              "start": {
                                "line": 112,
                                "column": 44
                              },
                              "end": {
                                "line": 112,
                                "column": 60
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 5225,
                              "end": 5232,
                              "loc": {
                                "start": {
                                  "line": 112,
                                  "column": 44
                                },
                                "end": {
                                  "line": 112,
                                  "column": 51
                                }
                              },
                              "name": "options"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5233,
                              "end": 5241,
                              "loc": {
                                "start": {
                                  "line": 112,
                                  "column": 52
                                },
                                "end": {
                                  "line": 112,
                                  "column": 60
                                }
                              },
                              "name": "onServer"
                            },
                            "computed": false
                          },
                          "right": {
                            "type": "Literal",
                            "start": 5244,
                            "end": 5248,
                            "loc": {
                              "start": {
                                "line": 112,
                                "column": 63
                              },
                              "end": {
                                "line": 112,
                                "column": 67
                              }
                            },
                            "value": true,
                            "rawValue": true,
                            "raw": "true"
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 5258,
                      "end": 5318,
                      "loc": {
                        "start": {
                          "line": 113,
                          "column": 8
                        },
                        "end": {
                          "line": 113,
                          "column": 68
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 5262,
                        "end": 5292,
                        "loc": {
                          "start": {
                            "line": 113,
                            "column": 12
                          },
                          "end": {
                            "line": 113,
                            "column": 42
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 5262,
                          "end": 5278,
                          "loc": {
                            "start": {
                              "line": 113,
                              "column": 12
                            },
                            "end": {
                              "line": 113,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 5262,
                            "end": 5269,
                            "loc": {
                              "start": {
                                "line": 113,
                                "column": 12
                              },
                              "end": {
                                "line": 113,
                                "column": 19
                              }
                            },
                            "name": "options"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 5270,
                            "end": 5278,
                            "loc": {
                              "start": {
                                "line": 113,
                                "column": 20
                              },
                              "end": {
                                "line": 113,
                                "column": 28
                              }
                            },
                            "name": "onClient"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Identifier",
                          "start": 5283,
                          "end": 5292,
                          "loc": {
                            "start": {
                              "line": 113,
                              "column": 33
                            },
                            "end": {
                              "line": 113,
                              "column": 42
                            }
                          },
                          "name": "undefined"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 5294,
                        "end": 5318,
                        "loc": {
                          "start": {
                            "line": 113,
                            "column": 44
                          },
                          "end": {
                            "line": 113,
                            "column": 68
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 5294,
                          "end": 5317,
                          "loc": {
                            "start": {
                              "line": 113,
                              "column": 44
                            },
                            "end": {
                              "line": 113,
                              "column": 67
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 5294,
                            "end": 5310,
                            "loc": {
                              "start": {
                                "line": 113,
                                "column": 44
                              },
                              "end": {
                                "line": 113,
                                "column": 60
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 5294,
                              "end": 5301,
                              "loc": {
                                "start": {
                                  "line": 113,
                                  "column": 44
                                },
                                "end": {
                                  "line": 113,
                                  "column": 51
                                }
                              },
                              "name": "options"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5302,
                              "end": 5310,
                              "loc": {
                                "start": {
                                  "line": 113,
                                  "column": 52
                                },
                                "end": {
                                  "line": 113,
                                  "column": 60
                                }
                              },
                              "name": "onClient"
                            },
                            "computed": false
                          },
                          "right": {
                            "type": "Literal",
                            "start": 5313,
                            "end": 5317,
                            "loc": {
                              "start": {
                                "line": 113,
                                "column": 63
                              },
                              "end": {
                                "line": 113,
                                "column": 67
                              }
                            },
                            "value": true,
                            "rawValue": true,
                            "raw": "true"
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 5327,
                      "end": 5396,
                      "loc": {
                        "start": {
                          "line": 114,
                          "column": 8
                        },
                        "end": {
                          "line": 114,
                          "column": 77
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 5331,
                        "end": 5365,
                        "loc": {
                          "start": {
                            "line": 114,
                            "column": 12
                          },
                          "end": {
                            "line": 114,
                            "column": 46
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 5331,
                          "end": 5351,
                          "loc": {
                            "start": {
                              "line": 114,
                              "column": 12
                            },
                            "end": {
                              "line": 114,
                              "column": 32
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 5331,
                            "end": 5338,
                            "loc": {
                              "start": {
                                "line": 114,
                                "column": 12
                              },
                              "end": {
                                "line": 114,
                                "column": 19
                              }
                            },
                            "name": "options"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 5339,
                            "end": 5351,
                            "loc": {
                              "start": {
                                "line": 114,
                                "column": 20
                              },
                              "end": {
                                "line": 114,
                                "column": 32
                              }
                            },
                            "name": "updateSketch"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Identifier",
                          "start": 5356,
                          "end": 5365,
                          "loc": {
                            "start": {
                              "line": 114,
                              "column": 37
                            },
                            "end": {
                              "line": 114,
                              "column": 46
                            }
                          },
                          "name": "undefined"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 5367,
                        "end": 5396,
                        "loc": {
                          "start": {
                            "line": 114,
                            "column": 48
                          },
                          "end": {
                            "line": 114,
                            "column": 77
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 5367,
                          "end": 5395,
                          "loc": {
                            "start": {
                              "line": 114,
                              "column": 48
                            },
                            "end": {
                              "line": 114,
                              "column": 76
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 5367,
                            "end": 5387,
                            "loc": {
                              "start": {
                                "line": 114,
                                "column": 48
                              },
                              "end": {
                                "line": 114,
                                "column": 68
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 5367,
                              "end": 5374,
                              "loc": {
                                "start": {
                                  "line": 114,
                                  "column": 48
                                },
                                "end": {
                                  "line": 114,
                                  "column": 55
                                }
                              },
                              "name": "options"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5375,
                              "end": 5387,
                              "loc": {
                                "start": {
                                  "line": 114,
                                  "column": 56
                                },
                                "end": {
                                  "line": 114,
                                  "column": 68
                                }
                              },
                              "name": "updateSketch"
                            },
                            "computed": false
                          },
                          "right": {
                            "type": "Literal",
                            "start": 5390,
                            "end": 5395,
                            "loc": {
                              "start": {
                                "line": 114,
                                "column": 71
                              },
                              "end": {
                                "line": 114,
                                "column": 76
                              }
                            },
                            "value": false,
                            "rawValue": false,
                            "raw": "false"
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 5405,
                      "end": 5478,
                      "loc": {
                        "start": {
                          "line": 115,
                          "column": 8
                        },
                        "end": {
                          "line": 115,
                          "column": 81
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 5409,
                        "end": 5445,
                        "loc": {
                          "start": {
                            "line": 115,
                            "column": 12
                          },
                          "end": {
                            "line": 115,
                            "column": 48
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 5409,
                          "end": 5431,
                          "loc": {
                            "start": {
                              "line": 115,
                              "column": 12
                            },
                            "end": {
                              "line": 115,
                              "column": 34
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 5409,
                            "end": 5416,
                            "loc": {
                              "start": {
                                "line": 115,
                                "column": 12
                              },
                              "end": {
                                "line": 115,
                                "column": 19
                              }
                            },
                            "name": "options"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 5417,
                            "end": 5431,
                            "loc": {
                              "start": {
                                "line": 115,
                                "column": 20
                              },
                              "end": {
                                "line": 115,
                                "column": 34
                              }
                            },
                            "name": "autoconstraint"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Identifier",
                          "start": 5436,
                          "end": 5445,
                          "loc": {
                            "start": {
                              "line": 115,
                              "column": 39
                            },
                            "end": {
                              "line": 115,
                              "column": 48
                            }
                          },
                          "name": "undefined"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 5447,
                        "end": 5478,
                        "loc": {
                          "start": {
                            "line": 115,
                            "column": 50
                          },
                          "end": {
                            "line": 115,
                            "column": 81
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 5447,
                          "end": 5477,
                          "loc": {
                            "start": {
                              "line": 115,
                              "column": 50
                            },
                            "end": {
                              "line": 115,
                              "column": 80
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 5447,
                            "end": 5469,
                            "loc": {
                              "start": {
                                "line": 115,
                                "column": 50
                              },
                              "end": {
                                "line": 115,
                                "column": 72
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 5447,
                              "end": 5454,
                              "loc": {
                                "start": {
                                  "line": 115,
                                  "column": 50
                                },
                                "end": {
                                  "line": 115,
                                  "column": 57
                                }
                              },
                              "name": "options"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5455,
                              "end": 5469,
                              "loc": {
                                "start": {
                                  "line": 115,
                                  "column": 58
                                },
                                "end": {
                                  "line": 115,
                                  "column": 72
                                }
                              },
                              "name": "autoconstraint"
                            },
                            "computed": false
                          },
                          "right": {
                            "type": "Literal",
                            "start": 5472,
                            "end": 5477,
                            "loc": {
                              "start": {
                                "line": 115,
                                "column": 75
                              },
                              "end": {
                                "line": 115,
                                "column": 80
                              }
                            },
                            "value": false,
                            "rawValue": false,
                            "raw": "false"
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 5488,
                      "end": 5517,
                      "loc": {
                        "start": {
                          "line": 117,
                          "column": 8
                        },
                        "end": {
                          "line": 117,
                          "column": 37
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 5488,
                        "end": 5516,
                        "loc": {
                          "start": {
                            "line": 117,
                            "column": 8
                          },
                          "end": {
                            "line": 117,
                            "column": 36
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 5488,
                          "end": 5495,
                          "loc": {
                            "start": {
                              "line": 117,
                              "column": 8
                            },
                            "end": {
                              "line": 117,
                              "column": 15
                            }
                          },
                          "name": "objects"
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 5498,
                          "end": 5516,
                          "loc": {
                            "start": {
                              "line": 117,
                              "column": 18
                            },
                            "end": {
                              "line": 117,
                              "column": 36
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 5498,
                            "end": 5507,
                            "loc": {
                              "start": {
                                "line": 117,
                                "column": 18
                              },
                              "end": {
                                "line": 117,
                                "column": 27
                              }
                            },
                            "object": {
                              "type": "ArrayExpression",
                              "start": 5498,
                              "end": 5500,
                              "loc": {
                                "start": {
                                  "line": 117,
                                  "column": 18
                                },
                                "end": {
                                  "line": 117,
                                  "column": 20
                                }
                              },
                              "elements": []
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5501,
                              "end": 5507,
                              "loc": {
                                "start": {
                                  "line": 117,
                                  "column": 21
                                },
                                "end": {
                                  "line": 117,
                                  "column": 27
                                }
                              },
                              "name": "concat"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 5508,
                              "end": 5515,
                              "loc": {
                                "start": {
                                  "line": 117,
                                  "column": 28
                                },
                                "end": {
                                  "line": 117,
                                  "column": 35
                                }
                              },
                              "name": "objects"
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 5526,
                      "end": 5555,
                      "loc": {
                        "start": {
                          "line": 118,
                          "column": 8
                        },
                        "end": {
                          "line": 118,
                          "column": 37
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 5530,
                          "end": 5554,
                          "loc": {
                            "start": {
                              "line": 118,
                              "column": 12
                            },
                            "end": {
                              "line": 118,
                              "column": 36
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 5530,
                            "end": 5538,
                            "loc": {
                              "start": {
                                "line": 118,
                                "column": 12
                              },
                              "end": {
                                "line": 118,
                                "column": 20
                              }
                            },
                            "name": "sketcher"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 5541,
                            "end": 5554,
                            "loc": {
                              "start": {
                                "line": 118,
                                "column": 23
                              },
                              "end": {
                                "line": 118,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 5541,
                              "end": 5545,
                              "loc": {
                                "start": {
                                  "line": 118,
                                  "column": 23
                                },
                                "end": {
                                  "line": 118,
                                  "column": 27
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5546,
                              "end": 5554,
                              "loc": {
                                "start": {
                                  "line": 118,
                                  "column": 28
                                },
                                "end": {
                                  "line": 118,
                                  "column": 36
                                }
                              },
                              "name": "sketcher"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 5564,
                      "end": 5597,
                      "loc": {
                        "start": {
                          "line": 119,
                          "column": 8
                        },
                        "end": {
                          "line": 119,
                          "column": 41
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 5568,
                          "end": 5596,
                          "loc": {
                            "start": {
                              "line": 119,
                              "column": 12
                            },
                            "end": {
                              "line": 119,
                              "column": 40
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 5568,
                            "end": 5572,
                            "loc": {
                              "start": {
                                "line": 119,
                                "column": 12
                              },
                              "end": {
                                "line": 119,
                                "column": 16
                              }
                            },
                            "name": "view"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 5575,
                            "end": 5596,
                            "loc": {
                              "start": {
                                "line": 119,
                                "column": 19
                              },
                              "end": {
                                "line": 119,
                                "column": 40
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 5575,
                              "end": 5583,
                              "loc": {
                                "start": {
                                  "line": 119,
                                  "column": 19
                                },
                                "end": {
                                  "line": 119,
                                  "column": 27
                                }
                              },
                              "name": "sketcher"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5584,
                              "end": 5596,
                              "loc": {
                                "start": {
                                  "line": 119,
                                  "column": 28
                                },
                                "end": {
                                  "line": 119,
                                  "column": 40
                                }
                              },
                              "name": "__parentView"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 5607,
                      "end": 5670,
                      "loc": {
                        "start": {
                          "line": 121,
                          "column": 8
                        },
                        "end": {
                          "line": 122,
                          "column": 37
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 5611,
                        "end": 5631,
                        "loc": {
                          "start": {
                            "line": 121,
                            "column": 12
                          },
                          "end": {
                            "line": 121,
                            "column": 32
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 5611,
                          "end": 5625,
                          "loc": {
                            "start": {
                              "line": 121,
                              "column": 12
                            },
                            "end": {
                              "line": 121,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 5611,
                            "end": 5618,
                            "loc": {
                              "start": {
                                "line": 121,
                                "column": 12
                              },
                              "end": {
                                "line": 121,
                                "column": 19
                              }
                            },
                            "name": "objects"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 5619,
                            "end": 5625,
                            "loc": {
                              "start": {
                                "line": 121,
                                "column": 20
                              },
                              "end": {
                                "line": 121,
                                "column": 26
                              }
                            },
                            "name": "length"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Literal",
                          "start": 5630,
                          "end": 5631,
                          "loc": {
                            "start": {
                              "line": 121,
                              "column": 31
                            },
                            "end": {
                              "line": 121,
                              "column": 32
                            }
                          },
                          "value": 0,
                          "rawValue": 0,
                          "raw": "0"
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 5645,
                        "end": 5670,
                        "loc": {
                          "start": {
                            "line": 122,
                            "column": 12
                          },
                          "end": {
                            "line": 122,
                            "column": 37
                          }
                        },
                        "argument": {
                          "type": "CallExpression",
                          "start": 5652,
                          "end": 5669,
                          "loc": {
                            "start": {
                              "line": 122,
                              "column": 19
                            },
                            "end": {
                              "line": 122,
                              "column": 36
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 5652,
                            "end": 5667,
                            "loc": {
                              "start": {
                                "line": 122,
                                "column": 19
                              },
                              "end": {
                                "line": 122,
                                "column": 34
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 5652,
                              "end": 5659,
                              "loc": {
                                "start": {
                                  "line": 122,
                                  "column": 19
                                },
                                "end": {
                                  "line": 122,
                                  "column": 26
                                }
                              },
                              "name": "Promise"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5660,
                              "end": 5667,
                              "loc": {
                                "start": {
                                  "line": 122,
                                  "column": 27
                                },
                                "end": {
                                  "line": 122,
                                  "column": 34
                                }
                              },
                              "name": "resolve"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 5680,
                      "end": 5744,
                      "loc": {
                        "start": {
                          "line": 124,
                          "column": 8
                        },
                        "end": {
                          "line": 125,
                          "column": 42
                        }
                      },
                      "test": {
                        "type": "MemberExpression",
                        "start": 5684,
                        "end": 5700,
                        "loc": {
                          "start": {
                            "line": 124,
                            "column": 12
                          },
                          "end": {
                            "line": 124,
                            "column": 28
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 5684,
                          "end": 5691,
                          "loc": {
                            "start": {
                              "line": 124,
                              "column": 12
                            },
                            "end": {
                              "line": 124,
                              "column": 19
                            }
                          },
                          "name": "options"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 5692,
                          "end": 5700,
                          "loc": {
                            "start": {
                              "line": 124,
                              "column": 20
                            },
                            "end": {
                              "line": 124,
                              "column": 28
                            }
                          },
                          "name": "onClient"
                        },
                        "computed": false
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 5714,
                        "end": 5744,
                        "loc": {
                          "start": {
                            "line": 125,
                            "column": 12
                          },
                          "end": {
                            "line": 125,
                            "column": 42
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 5714,
                          "end": 5743,
                          "loc": {
                            "start": {
                              "line": 125,
                              "column": 12
                            },
                            "end": {
                              "line": 125,
                              "column": 41
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 5714,
                            "end": 5728,
                            "loc": {
                              "start": {
                                "line": 125,
                                "column": 12
                              },
                              "end": {
                                "line": 125,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 5714,
                              "end": 5722,
                              "loc": {
                                "start": {
                                  "line": 125,
                                  "column": 12
                                },
                                "end": {
                                  "line": 125,
                                  "column": 20
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 5714,
                                "end": 5718,
                                "loc": {
                                  "start": {
                                    "line": 125,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 125,
                                    "column": 16
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 5719,
                                "end": 5722,
                                "loc": {
                                  "start": {
                                    "line": 125,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 125,
                                    "column": 20
                                  }
                                },
                                "name": "add"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5723,
                              "end": 5728,
                              "loc": {
                                "start": {
                                  "line": 125,
                                  "column": 21
                                },
                                "end": {
                                  "line": 125,
                                  "column": 26
                                }
                              },
                              "name": "apply"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "ThisExpression",
                              "start": 5729,
                              "end": 5733,
                              "loc": {
                                "start": {
                                  "line": 125,
                                  "column": 27
                                },
                                "end": {
                                  "line": 125,
                                  "column": 31
                                }
                              }
                            },
                            {
                              "type": "Identifier",
                              "start": 5735,
                              "end": 5742,
                              "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": 5745,
                          "end": 5839,
                          "loc": {
                            "start": {
                              "line": 125,
                              "column": 43
                            },
                            "end": {
                              "line": 125,
                              "column": 137
                            }
                          },
                          "range": [
                            5745,
                            5839
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 5849,
                      "end": 6648,
                      "loc": {
                        "start": {
                          "line": 127,
                          "column": 8
                        },
                        "end": {
                          "line": 143,
                          "column": 10
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 5853,
                          "end": 6647,
                          "loc": {
                            "start": {
                              "line": 127,
                              "column": 12
                            },
                            "end": {
                              "line": 143,
                              "column": 9
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 5853,
                            "end": 5864,
                            "loc": {
                              "start": {
                                "line": 127,
                                "column": 12
                              },
                              "end": {
                                "line": 127,
                                "column": 23
                              }
                            },
                            "name": "afterServer",
                            "leadingComments": null
                          },
                          "init": {
                            "type": "ArrowFunctionExpression",
                            "start": 5867,
                            "end": 6647,
                            "loc": {
                              "start": {
                                "line": 127,
                                "column": 26
                              },
                              "end": {
                                "line": 143,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [],
                            "body": {
                              "type": "BlockStatement",
                              "start": 5873,
                              "end": 6647,
                              "loc": {
                                "start": {
                                  "line": 127,
                                  "column": 32
                                },
                                "end": {
                                  "line": 143,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 5887,
                                  "end": 6155,
                                  "loc": {
                                    "start": {
                                      "line": 128,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 134,
                                      "column": 15
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 5887,
                                    "end": 6154,
                                    "loc": {
                                      "start": {
                                        "line": 128,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 134,
                                        "column": 14
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 5887,
                                      "end": 5902,
                                      "loc": {
                                        "start": {
                                          "line": 128,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 128,
                                          "column": 27
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 5887,
                                        "end": 5894,
                                        "loc": {
                                          "start": {
                                            "line": 128,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 128,
                                            "column": 19
                                          }
                                        },
                                        "name": "objects"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 5895,
                                        "end": 5902,
                                        "loc": {
                                          "start": {
                                            "line": 128,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 128,
                                            "column": 27
                                          }
                                        },
                                        "name": "forEach"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "ArrowFunctionExpression",
                                        "start": 5903,
                                        "end": 6153,
                                        "loc": {
                                          "start": {
                                            "line": 128,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 134,
                                            "column": 13
                                          }
                                        },
                                        "id": null,
                                        "generator": false,
                                        "expression": false,
                                        "async": false,
                                        "params": [
                                          {
                                            "type": "Identifier",
                                            "start": 5903,
                                            "end": 5906,
                                            "loc": {
                                              "start": {
                                                "line": 128,
                                                "column": 28
                                              },
                                              "end": {
                                                "line": 128,
                                                "column": 31
                                              }
                                            },
                                            "name": "obj"
                                          }
                                        ],
                                        "body": {
                                          "type": "BlockStatement",
                                          "start": 5910,
                                          "end": 6153,
                                          "loc": {
                                            "start": {
                                              "line": 128,
                                              "column": 35
                                            },
                                            "end": {
                                              "line": 134,
                                              "column": 13
                                            }
                                          },
                                          "body": [
                                            {
                                              "type": "IfStatement",
                                              "start": 5928,
                                              "end": 5988,
                                              "loc": {
                                                "start": {
                                                  "line": 129,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 130,
                                                  "column": 27
                                                }
                                              },
                                              "test": {
                                                "type": "CallExpression",
                                                "start": 5932,
                                                "end": 5959,
                                                "loc": {
                                                  "start": {
                                                    "line": 129,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 129,
                                                    "column": 47
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 5932,
                                                  "end": 5954,
                                                  "loc": {
                                                    "start": {
                                                      "line": 129,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 129,
                                                      "column": 42
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 5932,
                                                    "end": 5950,
                                                    "loc": {
                                                      "start": {
                                                        "line": 129,
                                                        "column": 20
                                                      },
                                                      "end": {
                                                        "line": 129,
                                                        "column": 38
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "ThisExpression",
                                                      "start": 5932,
                                                      "end": 5936,
                                                      "loc": {
                                                        "start": {
                                                          "line": 129,
                                                          "column": 20
                                                        },
                                                        "end": {
                                                          "line": 129,
                                                          "column": 24
                                                        }
                                                      }
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 5937,
                                                      "end": 5950,
                                                      "loc": {
                                                        "start": {
                                                          "line": 129,
                                                          "column": 25
                                                        },
                                                        "end": {
                                                          "line": 129,
                                                          "column": 38
                                                        }
                                                      },
                                                      "name": "sketchObjects"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 5951,
                                                    "end": 5954,
                                                    "loc": {
                                                      "start": {
                                                        "line": 129,
                                                        "column": 39
                                                      },
                                                      "end": {
                                                        "line": 129,
                                                        "column": 42
                                                      }
                                                    },
                                                    "name": "has"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 5955,
                                                    "end": 5958,
                                                    "loc": {
                                                      "start": {
                                                        "line": 129,
                                                        "column": 43
                                                      },
                                                      "end": {
                                                        "line": 129,
                                                        "column": 46
                                                      }
                                                    },
                                                    "name": "obj"
                                                  }
                                                ]
                                              },
                                              "consequent": {
                                                "type": "ReturnStatement",
                                                "start": 5981,
                                                "end": 5988,
                                                "loc": {
                                                  "start": {
                                                    "line": 130,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 130,
                                                    "column": 27
                                                  }
                                                },
                                                "argument": null
                                              },
                                              "alternate": null
                                            },
                                            {
                                              "type": "ExpressionStatement",
                                              "start": 6005,
                                              "end": 6033,
                                              "loc": {
                                                "start": {
                                                  "line": 131,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 131,
                                                  "column": 44
                                                }
                                              },
                                              "expression": {
                                                "type": "CallExpression",
                                                "start": 6005,
                                                "end": 6032,
                                                "loc": {
                                                  "start": {
                                                    "line": 131,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 131,
                                                    "column": 43
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 6005,
                                                  "end": 6027,
                                                  "loc": {
                                                    "start": {
                                                      "line": 131,
                                                      "column": 16
                                                    },
                                                    "end": {
                                                      "line": 131,
                                                      "column": 38
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 6005,
                                                    "end": 6023,
                                                    "loc": {
                                                      "start": {
                                                        "line": 131,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 131,
                                                        "column": 34
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "ThisExpression",
                                                      "start": 6005,
                                                      "end": 6009,
                                                      "loc": {
                                                        "start": {
                                                          "line": 131,
                                                          "column": 16
                                                        },
                                                        "end": {
                                                          "line": 131,
                                                          "column": 20
                                                        }
                                                      }
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 6010,
                                                      "end": 6023,
                                                      "loc": {
                                                        "start": {
                                                          "line": 131,
                                                          "column": 21
                                                        },
                                                        "end": {
                                                          "line": 131,
                                                          "column": 34
                                                        }
                                                      },
                                                      "name": "sketchObjects"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 6024,
                                                    "end": 6027,
                                                    "loc": {
                                                      "start": {
                                                        "line": 131,
                                                        "column": 35
                                                      },
                                                      "end": {
                                                        "line": 131,
                                                        "column": 38
                                                      }
                                                    },
                                                    "name": "add"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 6028,
                                                    "end": 6031,
                                                    "loc": {
                                                      "start": {
                                                        "line": 131,
                                                        "column": 39
                                                      },
                                                      "end": {
                                                        "line": 131,
                                                        "column": 42
                                                      }
                                                    },
                                                    "name": "obj"
                                                  }
                                                ]
                                              }
                                            },
                                            {
                                              "type": "ExpressionStatement",
                                              "start": 6050,
                                              "end": 6092,
                                              "loc": {
                                                "start": {
                                                  "line": 132,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 132,
                                                  "column": 58
                                                }
                                              },
                                              "expression": {
                                                "type": "CallExpression",
                                                "start": 6050,
                                                "end": 6091,
                                                "loc": {
                                                  "start": {
                                                    "line": 132,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 132,
                                                    "column": 57
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 6050,
                                                  "end": 6080,
                                                  "loc": {
                                                    "start": {
                                                      "line": 132,
                                                      "column": 16
                                                    },
                                                    "end": {
                                                      "line": 132,
                                                      "column": 46
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 6050,
                                                    "end": 6058,
                                                    "loc": {
                                                      "start": {
                                                        "line": 132,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 132,
                                                        "column": 24
                                                      }
                                                    },
                                                    "name": "Sketcher"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 6059,
                                                    "end": 6080,
                                                    "loc": {
                                                      "start": {
                                                        "line": 132,
                                                        "column": 25
                                                      },
                                                      "end": {
                                                        "line": 132,
                                                        "column": 46
                                                      }
                                                    },
                                                    "name": "registerVisualization"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 6081,
                                                    "end": 6085,
                                                    "loc": {
                                                      "start": {
                                                        "line": 132,
                                                        "column": 47
                                                      },
                                                      "end": {
                                                        "line": 132,
                                                        "column": 51
                                                      }
                                                    },
                                                    "name": "view"
                                                  },
                                                  {
                                                    "type": "Identifier",
                                                    "start": 6087,
                                                    "end": 6090,
                                                    "loc": {
                                                      "start": {
                                                        "line": 132,
                                                        "column": 53
                                                      },
                                                      "end": {
                                                        "line": 132,
                                                        "column": 56
                                                      }
                                                    },
                                                    "name": "obj"
                                                  }
                                                ]
                                              }
                                            },
                                            {
                                              "type": "ExpressionStatement",
                                              "start": 6109,
                                              "end": 6139,
                                              "loc": {
                                                "start": {
                                                  "line": 133,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 133,
                                                  "column": 46
                                                }
                                              },
                                              "expression": {
                                                "type": "CallExpression",
                                                "start": 6109,
                                                "end": 6138,
                                                "loc": {
                                                  "start": {
                                                    "line": 133,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 133,
                                                    "column": 45
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 6109,
                                                  "end": 6118,
                                                  "loc": {
                                                    "start": {
                                                      "line": 133,
                                                      "column": 16
                                                    },
                                                    "end": {
                                                      "line": 133,
                                                      "column": 25
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "ThisExpression",
                                                    "start": 6109,
                                                    "end": 6113,
                                                    "loc": {
                                                      "start": {
                                                        "line": 133,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 133,
                                                        "column": 20
                                                      }
                                                    }
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 6114,
                                                    "end": 6118,
                                                    "loc": {
                                                      "start": {
                                                        "line": 133,
                                                        "column": 21
                                                      },
                                                      "end": {
                                                        "line": 133,
                                                        "column": 25
                                                      }
                                                    },
                                                    "name": "emit"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "Literal",
                                                    "start": 6119,
                                                    "end": 6132,
                                                    "loc": {
                                                      "start": {
                                                        "line": 133,
                                                        "column": 26
                                                      },
                                                      "end": {
                                                        "line": 133,
                                                        "column": 39
                                                      }
                                                    },
                                                    "value": "SketchAdded",
                                                    "rawValue": "SketchAdded",
                                                    "raw": "'SketchAdded'"
                                                  },
                                                  {
                                                    "type": "Identifier",
                                                    "start": 6134,
                                                    "end": 6137,
                                                    "loc": {
                                                      "start": {
                                                        "line": 133,
                                                        "column": 41
                                                      },
                                                      "end": {
                                                        "line": 133,
                                                        "column": 44
                                                      }
                                                    },
                                                    "name": "obj"
                                                  }
                                                ]
                                              }
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 6169,
                                  "end": 6637,
                                  "loc": {
                                    "start": {
                                      "line": 136,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 142,
                                      "column": 13
                                    }
                                  },
                                  "test": {
                                    "type": "LogicalExpression",
                                    "start": 6173,
                                    "end": 6243,
                                    "loc": {
                                      "start": {
                                        "line": 136,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 136,
                                        "column": 86
                                      }
                                    },
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 6173,
                                      "end": 6195,
                                      "loc": {
                                        "start": {
                                          "line": 136,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 136,
                                          "column": 38
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 6173,
                                        "end": 6180,
                                        "loc": {
                                          "start": {
                                            "line": 136,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 136,
                                            "column": 23
                                          }
                                        },
                                        "name": "options"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 6181,
                                        "end": 6195,
                                        "loc": {
                                          "start": {
                                            "line": 136,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 136,
                                            "column": 38
                                          }
                                        },
                                        "name": "autoconstraint"
                                      },
                                      "computed": false
                                    },
                                    "operator": "&&",
                                    "right": {
                                      "type": "MemberExpression",
                                      "start": 6199,
                                      "end": 6243,
                                      "loc": {
                                        "start": {
                                          "line": 136,
                                          "column": 42
                                        },
                                        "end": {
                                          "line": 136,
                                          "column": 86
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 6199,
                                        "end": 6217,
                                        "loc": {
                                          "start": {
                                            "line": 136,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 136,
                                            "column": 60
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 6199,
                                          "end": 6207,
                                          "loc": {
                                            "start": {
                                              "line": 136,
                                              "column": 42
                                            },
                                            "end": {
                                              "line": 136,
                                              "column": 50
                                            }
                                          },
                                          "name": "sketcher"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 6208,
                                          "end": 6217,
                                          "loc": {
                                            "start": {
                                              "line": 136,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 136,
                                              "column": 60
                                            }
                                          },
                                          "name": "modelData"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 6218,
                                        "end": 6243,
                                        "loc": {
                                          "start": {
                                            "line": 136,
                                            "column": 61
                                          },
                                          "end": {
                                            "line": 136,
                                            "column": 86
                                          }
                                        },
                                        "name": "autoconstraintIncremental"
                                      },
                                      "computed": false
                                    }
                                  },
                                  "consequent": {
                                    "type": "BlockStatement",
                                    "start": 6245,
                                    "end": 6637,
                                    "loc": {
                                      "start": {
                                        "line": 136,
                                        "column": 88
                                      },
                                      "end": {
                                        "line": 142,
                                        "column": 13
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "VariableDeclaration",
                                        "start": 6345,
                                        "end": 6389,
                                        "loc": {
                                          "start": {
                                            "line": 138,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 138,
                                            "column": 60
                                          }
                                        },
                                        "declarations": [
                                          {
                                            "type": "VariableDeclarator",
                                            "start": 6349,
                                            "end": 6388,
                                            "loc": {
                                              "start": {
                                                "line": 138,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 138,
                                                "column": 59
                                              }
                                            },
                                            "id": {
                                              "type": "Identifier",
                                              "start": 6349,
                                              "end": 6356,
                                              "loc": {
                                                "start": {
                                                  "line": 138,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 138,
                                                  "column": 27
                                                }
                                              },
                                              "name": "autogen",
                                              "leadingComments": null
                                            },
                                            "init": {
                                              "type": "NewExpression",
                                              "start": 6359,
                                              "end": 6388,
                                              "loc": {
                                                "start": {
                                                  "line": 138,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 138,
                                                  "column": 59
                                                }
                                              },
                                              "callee": {
                                                "type": "Identifier",
                                                "start": 6363,
                                                "end": 6382,
                                                "loc": {
                                                  "start": {
                                                    "line": 138,
                                                    "column": 34
                                                  },
                                                  "end": {
                                                    "line": 138,
                                                    "column": 53
                                                  }
                                                },
                                                "name": "ConstraintGenerator"
                                              },
                                              "arguments": [
                                                {
                                                  "type": "ThisExpression",
                                                  "start": 6383,
                                                  "end": 6387,
                                                  "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": 6263,
                                            "end": 6328,
                                            "loc": {
                                              "start": {
                                                "line": 137,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 137,
                                                "column": 81
                                              }
                                            },
                                            "range": [
                                              6263,
                                              6328
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "VariableDeclaration",
                                        "start": 6406,
                                        "end": 6499,
                                        "loc": {
                                          "start": {
                                            "line": 139,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 139,
                                            "column": 109
                                          }
                                        },
                                        "declarations": [
                                          {
                                            "type": "VariableDeclarator",
                                            "start": 6410,
                                            "end": 6498,
                                            "loc": {
                                              "start": {
                                                "line": 139,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 139,
                                                "column": 108
                                              }
                                            },
                                            "id": {
                                              "type": "Identifier",
                                              "start": 6410,
                                              "end": 6421,
                                              "loc": {
                                                "start": {
                                                  "line": 139,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 139,
                                                  "column": 31
                                                }
                                              },
                                              "name": "constraints"
                                            },
                                            "init": {
                                              "type": "CallExpression",
                                              "start": 6424,
                                              "end": 6498,
                                              "loc": {
                                                "start": {
                                                  "line": 139,
                                                  "column": 34
                                                },
                                                "end": {
                                                  "line": 139,
                                                  "column": 108
                                                }
                                              },
                                              "callee": {
                                                "type": "MemberExpression",
                                                "start": 6424,
                                                "end": 6458,
                                                "loc": {
                                                  "start": {
                                                    "line": 139,
                                                    "column": 34
                                                  },
                                                  "end": {
                                                    "line": 139,
                                                    "column": 68
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 6424,
                                                  "end": 6431,
                                                  "loc": {
                                                    "start": {
                                                      "line": 139,
                                                      "column": 34
                                                    },
                                                    "end": {
                                                      "line": 139,
                                                      "column": 41
                                                    }
                                                  },
                                                  "name": "autogen"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 6432,
                                                  "end": 6458,
                                                  "loc": {
                                                    "start": {
                                                      "line": 139,
                                                      "column": 42
                                                    },
                                                    "end": {
                                                      "line": 139,
                                                      "column": 68
                                                    }
                                                  },
                                                  "name": "generateImpliedConstraints"
                                                },
                                                "computed": false
                                              },
                                              "arguments": [
                                                {
                                                  "type": "CallExpression",
                                                  "start": 6459,
                                                  "end": 6497,
                                                  "loc": {
                                                    "start": {
                                                      "line": 139,
                                                      "column": 69
                                                    },
                                                    "end": {
                                                      "line": 139,
                                                      "column": 107
                                                    }
                                                  },
                                                  "callee": {
                                                    "type": "MemberExpression",
                                                    "start": 6459,
                                                    "end": 6488,
                                                    "loc": {
                                                      "start": {
                                                        "line": 139,
                                                        "column": 69
                                                      },
                                                      "end": {
                                                        "line": 139,
                                                        "column": 98
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 6459,
                                                      "end": 6465,
                                                      "loc": {
                                                        "start": {
                                                          "line": 139,
                                                          "column": 69
                                                        },
                                                        "end": {
                                                          "line": 139,
                                                          "column": 75
                                                        }
                                                      },
                                                      "name": "Sketch"
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 6466,
                                                      "end": 6488,
                                                      "loc": {
                                                        "start": {
                                                          "line": 139,
                                                          "column": 76
                                                        },
                                                        "end": {
                                                          "line": 139,
                                                          "column": 98
                                                        }
                                                      },
                                                      "name": "ForObjectsWithChildren"
                                                    },
                                                    "computed": false
                                                  },
                                                  "arguments": [
                                                    {
                                                      "type": "Identifier",
                                                      "start": 6489,
                                                      "end": 6496,
                                                      "loc": {
                                                        "start": {
                                                          "line": 139,
                                                          "column": 99
                                                        },
                                                        "end": {
                                                          "line": 139,
                                                          "column": 106
                                                        }
                                                      },
                                                      "name": "objects"
                                                    }
                                                  ]
                                                }
                                              ]
                                            }
                                          }
                                        ],
                                        "kind": "var"
                                      },
                                      {
                                        "type": "IfStatement",
                                        "start": 6516,
                                        "end": 6623,
                                        "loc": {
                                          "start": {
                                            "line": 140,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 141,
                                            "column": 79
                                          }
                                        },
                                        "test": {
                                          "type": "BinaryExpression",
                                          "start": 6520,
                                          "end": 6542,
                                          "loc": {
                                            "start": {
                                              "line": 140,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 140,
                                              "column": 42
                                            }
                                          },
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 6520,
                                            "end": 6538,
                                            "loc": {
                                              "start": {
                                                "line": 140,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 140,
                                                "column": 38
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 6520,
                                              "end": 6531,
                                              "loc": {
                                                "start": {
                                                  "line": 140,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 140,
                                                  "column": 31
                                                }
                                              },
                                              "name": "constraints"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 6532,
                                              "end": 6538,
                                              "loc": {
                                                "start": {
                                                  "line": 140,
                                                  "column": 32
                                                },
                                                "end": {
                                                  "line": 140,
                                                  "column": 38
                                                }
                                              },
                                              "name": "length"
                                            },
                                            "computed": false
                                          },
                                          "operator": ">",
                                          "right": {
                                            "type": "Literal",
                                            "start": 6541,
                                            "end": 6542,
                                            "loc": {
                                              "start": {
                                                "line": 140,
                                                "column": 41
                                              },
                                              "end": {
                                                "line": 140,
                                                "column": 42
                                              }
                                            },
                                            "value": 0,
                                            "rawValue": 0,
                                            "raw": "0"
                                          }
                                        },
                                        "consequent": {
                                          "type": "ReturnStatement",
                                          "start": 6564,
                                          "end": 6623,
                                          "loc": {
                                            "start": {
                                              "line": 141,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 141,
                                              "column": 79
                                            }
                                          },
                                          "argument": {
                                            "type": "CallExpression",
                                            "start": 6571,
                                            "end": 6622,
                                            "loc": {
                                              "start": {
                                                "line": 141,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 141,
                                                "column": 78
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 6571,
                                              "end": 6587,
                                              "loc": {
                                                "start": {
                                                  "line": 141,
                                                  "column": 27
                                                },
                                                "end": {
                                                  "line": 141,
                                                  "column": 43
                                                }
                                              },
                                              "object": {
                                                "type": "ThisExpression",
                                                "start": 6571,
                                                "end": 6575,
                                                "loc": {
                                                  "start": {
                                                    "line": 141,
                                                    "column": 27
                                                  },
                                                  "end": {
                                                    "line": 141,
                                                    "column": 31
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 6576,
                                                "end": 6587,
                                                "loc": {
                                                  "start": {
                                                    "line": 141,
                                                    "column": 32
                                                  },
                                                  "end": {
                                                    "line": 141,
                                                    "column": 43
                                                  }
                                                },
                                                "name": "addToSketch"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 6588,
                                                "end": 6599,
                                                "loc": {
                                                  "start": {
                                                    "line": 141,
                                                    "column": 44
                                                  },
                                                  "end": {
                                                    "line": 141,
                                                    "column": 55
                                                  }
                                                },
                                                "name": "constraints"
                                              },
                                              {
                                                "type": "ObjectExpression",
                                                "start": 6601,
                                                "end": 6621,
                                                "loc": {
                                                  "start": {
                                                    "line": 141,
                                                    "column": 57
                                                  },
                                                  "end": {
                                                    "line": 141,
                                                    "column": 77
                                                  }
                                                },
                                                "properties": [
                                                  {
                                                    "type": "Property",
                                                    "start": 6602,
                                                    "end": 6620,
                                                    "loc": {
                                                      "start": {
                                                        "line": 141,
                                                        "column": 58
                                                      },
                                                      "end": {
                                                        "line": 141,
                                                        "column": 76
                                                      }
                                                    },
                                                    "method": false,
                                                    "shorthand": false,
                                                    "computed": false,
                                                    "key": {
                                                      "type": "Identifier",
                                                      "start": 6602,
                                                      "end": 6614,
                                                      "loc": {
                                                        "start": {
                                                          "line": 141,
                                                          "column": 58
                                                        },
                                                        "end": {
                                                          "line": 141,
                                                          "column": 70
                                                        }
                                                      },
                                                      "name": "updateSketch"
                                                    },
                                                    "value": {
                                                      "type": "Literal",
                                                      "start": 6616,
                                                      "end": 6620,
                                                      "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": 5745,
                          "end": 5839,
                          "loc": {
                            "start": {
                              "line": 125,
                              "column": 43
                            },
                            "end": {
                              "line": 125,
                              "column": 137
                            }
                          },
                          "range": [
                            5745,
                            5839
                          ]
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " add objects to the sketch on the server and, if successful, on the client",
                          "start": 6658,
                          "end": 6734,
                          "loc": {
                            "start": {
                              "line": 145,
                              "column": 8
                            },
                            "end": {
                              "line": 145,
                              "column": 84
                            }
                          },
                          "range": [
                            6658,
                            6734
                          ]
                        }
                      ]
                    },
                    {
                      "type": "IfStatement",
                      "start": 6743,
                      "end": 7016,
                      "loc": {
                        "start": {
                          "line": 146,
                          "column": 8
                        },
                        "end": {
                          "line": 149,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "MemberExpression",
                        "start": 6747,
                        "end": 6763,
                        "loc": {
                          "start": {
                            "line": 146,
                            "column": 12
                          },
                          "end": {
                            "line": 146,
                            "column": 28
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 6747,
                          "end": 6754,
                          "loc": {
                            "start": {
                              "line": 146,
                              "column": 12
                            },
                            "end": {
                              "line": 146,
                              "column": 19
                            }
                          },
                          "name": "options",
                          "leadingComments": null
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 6755,
                          "end": 6763,
                          "loc": {
                            "start": {
                              "line": 146,
                              "column": 20
                            },
                            "end": {
                              "line": 146,
                              "column": 28
                            }
                          },
                          "name": "onServer"
                        },
                        "computed": false,
                        "leadingComments": null
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 6765,
                        "end": 7016,
                        "loc": {
                          "start": {
                            "line": 146,
                            "column": 30
                          },
                          "end": {
                            "line": 149,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 6779,
                            "end": 6849,
                            "loc": {
                              "start": {
                                "line": 147,
                                "column": 12
                              },
                              "end": {
                                "line": 147,
                                "column": 82
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 6783,
                                "end": 6848,
                                "loc": {
                                  "start": {
                                    "line": 147,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 147,
                                    "column": 81
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 6783,
                                  "end": 6791,
                                  "loc": {
                                    "start": {
                                      "line": 147,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 147,
                                      "column": 24
                                    }
                                  },
                                  "name": "commands"
                                },
                                "init": {
                                  "type": "CallExpression",
                                  "start": 6794,
                                  "end": 6848,
                                  "loc": {
                                    "start": {
                                      "line": 147,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 147,
                                      "column": 81
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 6794,
                                    "end": 6805,
                                    "loc": {
                                      "start": {
                                        "line": 147,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 147,
                                        "column": 38
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 6794,
                                      "end": 6801,
                                      "loc": {
                                        "start": {
                                          "line": 147,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 147,
                                          "column": 34
                                        }
                                      },
                                      "name": "objects"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 6802,
                                      "end": 6805,
                                      "loc": {
                                        "start": {
                                          "line": 147,
                                          "column": 35
                                        },
                                        "end": {
                                          "line": 147,
                                          "column": 38
                                        }
                                      },
                                      "name": "map"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "ArrowFunctionExpression",
                                      "start": 6806,
                                      "end": 6847,
                                      "loc": {
                                        "start": {
                                          "line": 147,
                                          "column": 39
                                        },
                                        "end": {
                                          "line": 147,
                                          "column": 80
                                        }
                                      },
                                      "id": null,
                                      "generator": false,
                                      "expression": true,
                                      "async": false,
                                      "params": [
                                        {
                                          "type": "Identifier",
                                          "start": 6806,
                                          "end": 6812,
                                          "loc": {
                                            "start": {
                                              "line": 147,
                                              "column": 39
                                            },
                                            "end": {
                                              "line": 147,
                                              "column": 45
                                            }
                                          },
                                          "name": "object"
                                        }
                                      ],
                                      "body": {
                                        "type": "CallExpression",
                                        "start": 6816,
                                        "end": 6847,
                                        "loc": {
                                          "start": {
                                            "line": 147,
                                            "column": 49
                                          },
                                          "end": {
                                            "line": 147,
                                            "column": 80
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 6816,
                                          "end": 6841,
                                          "loc": {
                                            "start": {
                                              "line": 147,
                                              "column": 49
                                            },
                                            "end": {
                                              "line": 147,
                                              "column": 74
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 6816,
                                            "end": 6822,
                                            "loc": {
                                              "start": {
                                                "line": 147,
                                                "column": 49
                                              },
                                              "end": {
                                                "line": 147,
                                                "column": 55
                                              }
                                            },
                                            "name": "object"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 6823,
                                            "end": 6841,
                                            "loc": {
                                              "start": {
                                                "line": 147,
                                                "column": 56
                                              },
                                              "end": {
                                                "line": 147,
                                                "column": 74
                                              }
                                            },
                                            "name": "prepareAddOnServer"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "ThisExpression",
                                            "start": 6842,
                                            "end": 6846,
                                            "loc": {
                                              "start": {
                                                "line": 147,
                                                "column": 75
                                              },
                                              "end": {
                                                "line": 147,
                                                "column": 79
                                              }
                                            }
                                          }
                                        ]
                                      }
                                    }
                                  ]
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 6862,
                            "end": 7006,
                            "loc": {
                              "start": {
                                "line": 148,
                                "column": 12
                              },
                              "end": {
                                "line": 148,
                                "column": 156
                              }
                            },
                            "argument": {
                              "type": "CallExpression",
                              "start": 6869,
                              "end": 7005,
                              "loc": {
                                "start": {
                                  "line": 148,
                                  "column": 19
                                },
                                "end": {
                                  "line": 148,
                                  "column": 155
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 6869,
                                "end": 6992,
                                "loc": {
                                  "start": {
                                    "line": 148,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 148,
                                    "column": 142
                                  }
                                },
                                "object": {
                                  "type": "ConditionalExpression",
                                  "start": 6870,
                                  "end": 6986,
                                  "loc": {
                                    "start": {
                                      "line": 148,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 148,
                                      "column": 136
                                    }
                                  },
                                  "test": {
                                    "type": "MemberExpression",
                                    "start": 6870,
                                    "end": 6890,
                                    "loc": {
                                      "start": {
                                        "line": 148,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 148,
                                        "column": 40
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 6870,
                                      "end": 6877,
                                      "loc": {
                                        "start": {
                                          "line": 148,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 148,
                                          "column": 27
                                        }
                                      },
                                      "name": "options"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 6878,
                                      "end": 6890,
                                      "loc": {
                                        "start": {
                                          "line": 148,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 148,
                                          "column": 40
                                        }
                                      },
                                      "name": "updateSketch"
                                    },
                                    "computed": false
                                  },
                                  "consequent": {
                                    "type": "CallExpression",
                                    "start": 6893,
                                    "end": 6941,
                                    "loc": {
                                      "start": {
                                        "line": 148,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 148,
                                        "column": 91
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 6893,
                                      "end": 6914,
                                      "loc": {
                                        "start": {
                                          "line": 148,
                                          "column": 43
                                        },
                                        "end": {
                                          "line": 148,
                                          "column": 64
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 6893,
                                        "end": 6897,
                                        "loc": {
                                          "start": {
                                            "line": 148,
                                            "column": 43
                                          },
                                          "end": {
                                            "line": 148,
                                            "column": 47
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 6898,
                                        "end": 6914,
                                        "loc": {
                                          "start": {
                                            "line": 148,
                                            "column": 48
                                          },
                                          "end": {
                                            "line": 148,
                                            "column": 64
                                          }
                                        },
                                        "name": "updateFromServer"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "MemberExpression",
                                        "start": 6915,
                                        "end": 6930,
                                        "loc": {
                                          "start": {
                                            "line": 148,
                                            "column": 65
                                          },
                                          "end": {
                                            "line": 148,
                                            "column": 80
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 6915,
                                          "end": 6923,
                                          "loc": {
                                            "start": {
                                              "line": 148,
                                              "column": 65
                                            },
                                            "end": {
                                              "line": 148,
                                              "column": 73
                                            }
                                          },
                                          "name": "sketcher"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 6924,
                                          "end": 6930,
                                          "loc": {
                                            "start": {
                                              "line": 148,
                                              "column": 74
                                            },
                                            "end": {
                                              "line": 148,
                                              "column": 80
                                            }
                                          },
                                          "name": "server"
                                        },
                                        "computed": false
                                      },
                                      {
                                        "type": "Identifier",
                                        "start": 6932,
                                        "end": 6940,
                                        "loc": {
                                          "start": {
                                            "line": 148,
                                            "column": 82
                                          },
                                          "end": {
                                            "line": 148,
                                            "column": 90
                                          }
                                        },
                                        "name": "commands"
                                      }
                                    ]
                                  },
                                  "alternate": {
                                    "type": "CallExpression",
                                    "start": 6944,
                                    "end": 6986,
                                    "loc": {
                                      "start": {
                                        "line": 148,
                                        "column": 94
                                      },
                                      "end": {
                                        "line": 148,
                                        "column": 136
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 6944,
                                      "end": 6959,
                                      "loc": {
                                        "start": {
                                          "line": 148,
                                          "column": 94
                                        },
                                        "end": {
                                          "line": 148,
                                          "column": 109
                                        }
                                      },
                                      "name": "executePrepared"
                                    },
                                    "arguments": [
                                      {
                                        "type": "MemberExpression",
                                        "start": 6960,
                                        "end": 6975,
                                        "loc": {
                                          "start": {
                                            "line": 148,
                                            "column": 110
                                          },
                                          "end": {
                                            "line": 148,
                                            "column": 125
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 6960,
                                          "end": 6968,
                                          "loc": {
                                            "start": {
                                              "line": 148,
                                              "column": 110
                                            },
                                            "end": {
                                              "line": 148,
                                              "column": 118
                                            }
                                          },
                                          "name": "sketcher"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 6969,
                                          "end": 6975,
                                          "loc": {
                                            "start": {
                                              "line": 148,
                                              "column": 119
                                            },
                                            "end": {
                                              "line": 148,
                                              "column": 125
                                            }
                                          },
                                          "name": "server"
                                        },
                                        "computed": false
                                      },
                                      {
                                        "type": "Identifier",
                                        "start": 6977,
                                        "end": 6985,
                                        "loc": {
                                          "start": {
                                            "line": 148,
                                            "column": 127
                                          },
                                          "end": {
                                            "line": 148,
                                            "column": 135
                                          }
                                        },
                                        "name": "commands"
                                      }
                                    ]
                                  },
                                  "parenthesizedExpression": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 6988,
                                  "end": 6992,
                                  "loc": {
                                    "start": {
                                      "line": 148,
                                      "column": 138
                                    },
                                    "end": {
                                      "line": 148,
                                      "column": 142
                                    }
                                  },
                                  "name": "then"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 6993,
                                  "end": 7004,
                                  "loc": {
                                    "start": {
                                      "line": 148,
                                      "column": 143
                                    },
                                    "end": {
                                      "line": 148,
                                      "column": 154
                                    }
                                  },
                                  "name": "afterServer"
                                }
                              ]
                            }
                          }
                        ]
                      },
                      "alternate": null,
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " add objects to the sketch on the server and, if successful, on the client",
                          "start": 6658,
                          "end": 6734,
                          "loc": {
                            "start": {
                              "line": 145,
                              "column": 8
                            },
                            "end": {
                              "line": 145,
                              "column": 84
                            }
                          },
                          "range": [
                            6658,
                            6734
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 7026,
                      "end": 7064,
                      "loc": {
                        "start": {
                          "line": 151,
                          "column": 8
                        },
                        "end": {
                          "line": 151,
                          "column": 46
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 7033,
                        "end": 7063,
                        "loc": {
                          "start": {
                            "line": 151,
                            "column": 15
                          },
                          "end": {
                            "line": 151,
                            "column": 45
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 7033,
                          "end": 7048,
                          "loc": {
                            "start": {
                              "line": 151,
                              "column": 15
                            },
                            "end": {
                              "line": 151,
                              "column": 30
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 7033,
                            "end": 7040,
                            "loc": {
                              "start": {
                                "line": 151,
                                "column": 15
                              },
                              "end": {
                                "line": 151,
                                "column": 22
                              }
                            },
                            "name": "Promise"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7041,
                            "end": 7048,
                            "loc": {
                              "start": {
                                "line": 151,
                                "column": 23
                              },
                              "end": {
                                "line": 151,
                                "column": 30
                              }
                            },
                            "name": "resolve"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 7049,
                            "end": 7062,
                            "loc": {
                              "start": {
                                "line": 151,
                                "column": 31
                              },
                              "end": {
                                "line": 151,
                                "column": 44
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 7049,
                              "end": 7060,
                              "loc": {
                                "start": {
                                  "line": 151,
                                  "column": 31
                                },
                                "end": {
                                  "line": 151,
                                  "column": 42
                                }
                              },
                              "name": "afterServer"
                            },
                            "arguments": []
                          }
                        ]
                      }
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " Part.SketchSet.Sketch",
                  "start": 4499,
                  "end": 4523,
                  "loc": {
                    "start": {
                      "line": 101,
                      "column": 35
                    },
                    "end": {
                      "line": 101,
                      "column": 59
                    }
                  },
                  "range": [
                    4499,
                    4523
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " Physically add objects to the sketch (in contrast to addAuxObject)",
                  "start": 4535,
                  "end": 4604,
                  "loc": {
                    "start": {
                      "line": 104,
                      "column": 4
                    },
                    "end": {
                      "line": 104,
                      "column": 73
                    }
                  },
                  "range": [
                    4535,
                    4604
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " If some objects were previously added with addAuxObject, automatically remove them from aux objects",
                  "start": 4609,
                  "end": 4711,
                  "loc": {
                    "start": {
                      "line": 105,
                      "column": 4
                    },
                    "end": {
                      "line": 105,
                      "column": 106
                    }
                  },
                  "range": [
                    4609,
                    4711
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " possible options:",
                  "start": 4716,
                  "end": 4736,
                  "loc": {
                    "start": {
                      "line": 106,
                      "column": 4
                    },
                    "end": {
                      "line": 106,
                      "column": 24
                    }
                  },
                  "range": [
                    4716,
                    4736
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": "   onServer (default: true) - whether to send commands to the server.",
                  "start": 4741,
                  "end": 4812,
                  "loc": {
                    "start": {
                      "line": 107,
                      "column": 4
                    },
                    "end": {
                      "line": 107,
                      "column": 75
                    }
                  },
                  "range": [
                    4741,
                    4812
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": "   onClient (default: true) - whether to add objects to children",
                  "start": 4817,
                  "end": 4883,
                  "loc": {
                    "start": {
                      "line": 108,
                      "column": 4
                    },
                    "end": {
                      "line": 108,
                      "column": 70
                    }
                  },
                  "range": [
                    4817,
                    4883
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": "   autoconstraint (default: false) - if true, then implied constraints are generated if neccessary.",
                  "start": 4888,
                  "end": 4989,
                  "loc": {
                    "start": {
                      "line": 109,
                      "column": 4
                    },
                    "end": {
                      "line": 109,
                      "column": 105
                    }
                  },
                  "range": [
                    4888,
                    4989
                  ]
                },
                {
                  "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": 4994,
                  "end": 5139,
                  "loc": {
                    "start": {
                      "line": 110,
                      "column": 4
                    },
                    "end": {
                      "line": 110,
                      "column": 149
                    }
                  },
                  "range": [
                    4994,
                    5139
                  ]
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " Remove objects previously added with addToSketch",
                  "start": 7076,
                  "end": 7127,
                  "loc": {
                    "start": {
                      "line": 154,
                      "column": 4
                    },
                    "end": {
                      "line": 154,
                      "column": 55
                    }
                  },
                  "range": [
                    7076,
                    7127
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 7132,
              "end": 8802,
              "loc": {
                "start": {
                  "line": 155,
                  "column": 4
                },
                "end": {
                  "line": 190,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 7132,
                "end": 7148,
                "loc": {
                  "start": {
                    "line": 155,
                    "column": 4
                  },
                  "end": {
                    "line": 155,
                    "column": 20
                  }
                },
                "name": "removeFromSketch",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 7148,
                "end": 8802,
                "loc": {
                  "start": {
                    "line": 155,
                    "column": 20
                  },
                  "end": {
                    "line": 190,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 7149,
                    "end": 7156,
                    "loc": {
                      "start": {
                        "line": 155,
                        "column": 21
                      },
                      "end": {
                        "line": 155,
                        "column": 28
                      }
                    },
                    "name": "objects"
                  },
                  {
                    "type": "AssignmentPattern",
                    "start": 7158,
                    "end": 7170,
                    "loc": {
                      "start": {
                        "line": 155,
                        "column": 30
                      },
                      "end": {
                        "line": 155,
                        "column": 42
                      }
                    },
                    "operator": "=",
                    "left": {
                      "type": "Identifier",
                      "start": 7158,
                      "end": 7165,
                      "loc": {
                        "start": {
                          "line": 155,
                          "column": 30
                        },
                        "end": {
                          "line": 155,
                          "column": 37
                        }
                      },
                      "name": "options"
                    },
                    "right": {
                      "type": "ObjectExpression",
                      "start": 7168,
                      "end": 7170,
                      "loc": {
                        "start": {
                          "line": 155,
                          "column": 40
                        },
                        "end": {
                          "line": 155,
                          "column": 42
                        }
                      },
                      "properties": []
                    }
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 7172,
                  "end": 8802,
                  "loc": {
                    "start": {
                      "line": 155,
                      "column": 44
                    },
                    "end": {
                      "line": 190,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 7182,
                      "end": 7242,
                      "loc": {
                        "start": {
                          "line": 156,
                          "column": 8
                        },
                        "end": {
                          "line": 156,
                          "column": 68
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 7186,
                        "end": 7216,
                        "loc": {
                          "start": {
                            "line": 156,
                            "column": 12
                          },
                          "end": {
                            "line": 156,
                            "column": 42
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 7186,
                          "end": 7202,
                          "loc": {
                            "start": {
                              "line": 156,
                              "column": 12
                            },
                            "end": {
                              "line": 156,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 7186,
                            "end": 7193,
                            "loc": {
                              "start": {
                                "line": 156,
                                "column": 12
                              },
                              "end": {
                                "line": 156,
                                "column": 19
                              }
                            },
                            "name": "options"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7194,
                            "end": 7202,
                            "loc": {
                              "start": {
                                "line": 156,
                                "column": 20
                              },
                              "end": {
                                "line": 156,
                                "column": 28
                              }
                            },
                            "name": "onServer"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Identifier",
                          "start": 7207,
                          "end": 7216,
                          "loc": {
                            "start": {
                              "line": 156,
                              "column": 33
                            },
                            "end": {
                              "line": 156,
                              "column": 42
                            }
                          },
                          "name": "undefined"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 7218,
                        "end": 7242,
                        "loc": {
                          "start": {
                            "line": 156,
                            "column": 44
                          },
                          "end": {
                            "line": 156,
                            "column": 68
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 7218,
                          "end": 7241,
                          "loc": {
                            "start": {
                              "line": 156,
                              "column": 44
                            },
                            "end": {
                              "line": 156,
                              "column": 67
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 7218,
                            "end": 7234,
                            "loc": {
                              "start": {
                                "line": 156,
                                "column": 44
                              },
                              "end": {
                                "line": 156,
                                "column": 60
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 7218,
                              "end": 7225,
                              "loc": {
                                "start": {
                                  "line": 156,
                                  "column": 44
                                },
                                "end": {
                                  "line": 156,
                                  "column": 51
                                }
                              },
                              "name": "options"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7226,
                              "end": 7234,
                              "loc": {
                                "start": {
                                  "line": 156,
                                  "column": 52
                                },
                                "end": {
                                  "line": 156,
                                  "column": 60
                                }
                              },
                              "name": "onServer"
                            },
                            "computed": false
                          },
                          "right": {
                            "type": "Literal",
                            "start": 7237,
                            "end": 7241,
                            "loc": {
                              "start": {
                                "line": 156,
                                "column": 63
                              },
                              "end": {
                                "line": 156,
                                "column": 67
                              }
                            },
                            "value": true,
                            "rawValue": true,
                            "raw": "true"
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 7251,
                      "end": 7311,
                      "loc": {
                        "start": {
                          "line": 157,
                          "column": 8
                        },
                        "end": {
                          "line": 157,
                          "column": 68
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 7255,
                        "end": 7285,
                        "loc": {
                          "start": {
                            "line": 157,
                            "column": 12
                          },
                          "end": {
                            "line": 157,
                            "column": 42
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 7255,
                          "end": 7271,
                          "loc": {
                            "start": {
                              "line": 157,
                              "column": 12
                            },
                            "end": {
                              "line": 157,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 7255,
                            "end": 7262,
                            "loc": {
                              "start": {
                                "line": 157,
                                "column": 12
                              },
                              "end": {
                                "line": 157,
                                "column": 19
                              }
                            },
                            "name": "options"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7263,
                            "end": 7271,
                            "loc": {
                              "start": {
                                "line": 157,
                                "column": 20
                              },
                              "end": {
                                "line": 157,
                                "column": 28
                              }
                            },
                            "name": "onClient"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Identifier",
                          "start": 7276,
                          "end": 7285,
                          "loc": {
                            "start": {
                              "line": 157,
                              "column": 33
                            },
                            "end": {
                              "line": 157,
                              "column": 42
                            }
                          },
                          "name": "undefined"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 7287,
                        "end": 7311,
                        "loc": {
                          "start": {
                            "line": 157,
                            "column": 44
                          },
                          "end": {
                            "line": 157,
                            "column": 68
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 7287,
                          "end": 7310,
                          "loc": {
                            "start": {
                              "line": 157,
                              "column": 44
                            },
                            "end": {
                              "line": 157,
                              "column": 67
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 7287,
                            "end": 7303,
                            "loc": {
                              "start": {
                                "line": 157,
                                "column": 44
                              },
                              "end": {
                                "line": 157,
                                "column": 60
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 7287,
                              "end": 7294,
                              "loc": {
                                "start": {
                                  "line": 157,
                                  "column": 44
                                },
                                "end": {
                                  "line": 157,
                                  "column": 51
                                }
                              },
                              "name": "options"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7295,
                              "end": 7303,
                              "loc": {
                                "start": {
                                  "line": 157,
                                  "column": 52
                                },
                                "end": {
                                  "line": 157,
                                  "column": 60
                                }
                              },
                              "name": "onClient"
                            },
                            "computed": false
                          },
                          "right": {
                            "type": "Literal",
                            "start": 7306,
                            "end": 7310,
                            "loc": {
                              "start": {
                                "line": 157,
                                "column": 63
                              },
                              "end": {
                                "line": 157,
                                "column": 67
                              }
                            },
                            "value": true,
                            "rawValue": true,
                            "raw": "true"
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 7320,
                      "end": 7389,
                      "loc": {
                        "start": {
                          "line": 158,
                          "column": 8
                        },
                        "end": {
                          "line": 158,
                          "column": 77
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 7324,
                        "end": 7358,
                        "loc": {
                          "start": {
                            "line": 158,
                            "column": 12
                          },
                          "end": {
                            "line": 158,
                            "column": 46
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 7324,
                          "end": 7344,
                          "loc": {
                            "start": {
                              "line": 158,
                              "column": 12
                            },
                            "end": {
                              "line": 158,
                              "column": 32
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 7324,
                            "end": 7331,
                            "loc": {
                              "start": {
                                "line": 158,
                                "column": 12
                              },
                              "end": {
                                "line": 158,
                                "column": 19
                              }
                            },
                            "name": "options"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7332,
                            "end": 7344,
                            "loc": {
                              "start": {
                                "line": 158,
                                "column": 20
                              },
                              "end": {
                                "line": 158,
                                "column": 32
                              }
                            },
                            "name": "updateSketch"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Identifier",
                          "start": 7349,
                          "end": 7358,
                          "loc": {
                            "start": {
                              "line": 158,
                              "column": 37
                            },
                            "end": {
                              "line": 158,
                              "column": 46
                            }
                          },
                          "name": "undefined"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 7360,
                        "end": 7389,
                        "loc": {
                          "start": {
                            "line": 158,
                            "column": 48
                          },
                          "end": {
                            "line": 158,
                            "column": 77
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 7360,
                          "end": 7388,
                          "loc": {
                            "start": {
                              "line": 158,
                              "column": 48
                            },
                            "end": {
                              "line": 158,
                              "column": 76
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 7360,
                            "end": 7380,
                            "loc": {
                              "start": {
                                "line": 158,
                                "column": 48
                              },
                              "end": {
                                "line": 158,
                                "column": 68
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 7360,
                              "end": 7367,
                              "loc": {
                                "start": {
                                  "line": 158,
                                  "column": 48
                                },
                                "end": {
                                  "line": 158,
                                  "column": 55
                                }
                              },
                              "name": "options"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7368,
                              "end": 7380,
                              "loc": {
                                "start": {
                                  "line": 158,
                                  "column": 56
                                },
                                "end": {
                                  "line": 158,
                                  "column": 68
                                }
                              },
                              "name": "updateSketch"
                            },
                            "computed": false
                          },
                          "right": {
                            "type": "Literal",
                            "start": 7383,
                            "end": 7388,
                            "loc": {
                              "start": {
                                "line": 158,
                                "column": 71
                              },
                              "end": {
                                "line": 158,
                                "column": 76
                              }
                            },
                            "value": false,
                            "rawValue": false,
                            "raw": "false"
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 7399,
                      "end": 7428,
                      "loc": {
                        "start": {
                          "line": 160,
                          "column": 8
                        },
                        "end": {
                          "line": 160,
                          "column": 37
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 7399,
                        "end": 7427,
                        "loc": {
                          "start": {
                            "line": 160,
                            "column": 8
                          },
                          "end": {
                            "line": 160,
                            "column": 36
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 7399,
                          "end": 7406,
                          "loc": {
                            "start": {
                              "line": 160,
                              "column": 8
                            },
                            "end": {
                              "line": 160,
                              "column": 15
                            }
                          },
                          "name": "objects"
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 7409,
                          "end": 7427,
                          "loc": {
                            "start": {
                              "line": 160,
                              "column": 18
                            },
                            "end": {
                              "line": 160,
                              "column": 36
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 7409,
                            "end": 7418,
                            "loc": {
                              "start": {
                                "line": 160,
                                "column": 18
                              },
                              "end": {
                                "line": 160,
                                "column": 27
                              }
                            },
                            "object": {
                              "type": "ArrayExpression",
                              "start": 7409,
                              "end": 7411,
                              "loc": {
                                "start": {
                                  "line": 160,
                                  "column": 18
                                },
                                "end": {
                                  "line": 160,
                                  "column": 20
                                }
                              },
                              "elements": []
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7412,
                              "end": 7418,
                              "loc": {
                                "start": {
                                  "line": 160,
                                  "column": 21
                                },
                                "end": {
                                  "line": 160,
                                  "column": 27
                                }
                              },
                              "name": "concat"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 7419,
                              "end": 7426,
                              "loc": {
                                "start": {
                                  "line": 160,
                                  "column": 28
                                },
                                "end": {
                                  "line": 160,
                                  "column": 35
                                }
                              },
                              "name": "objects"
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 7437,
                      "end": 7466,
                      "loc": {
                        "start": {
                          "line": 161,
                          "column": 8
                        },
                        "end": {
                          "line": 161,
                          "column": 37
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 7441,
                          "end": 7465,
                          "loc": {
                            "start": {
                              "line": 161,
                              "column": 12
                            },
                            "end": {
                              "line": 161,
                              "column": 36
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 7441,
                            "end": 7449,
                            "loc": {
                              "start": {
                                "line": 161,
                                "column": 12
                              },
                              "end": {
                                "line": 161,
                                "column": 20
                              }
                            },
                            "name": "sketcher"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 7452,
                            "end": 7465,
                            "loc": {
                              "start": {
                                "line": 161,
                                "column": 23
                              },
                              "end": {
                                "line": 161,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 7452,
                              "end": 7456,
                              "loc": {
                                "start": {
                                  "line": 161,
                                  "column": 23
                                },
                                "end": {
                                  "line": 161,
                                  "column": 27
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7457,
                              "end": 7465,
                              "loc": {
                                "start": {
                                  "line": 161,
                                  "column": 28
                                },
                                "end": {
                                  "line": 161,
                                  "column": 36
                                }
                              },
                              "name": "sketcher"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 7475,
                      "end": 7508,
                      "loc": {
                        "start": {
                          "line": 162,
                          "column": 8
                        },
                        "end": {
                          "line": 162,
                          "column": 41
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 7479,
                          "end": 7507,
                          "loc": {
                            "start": {
                              "line": 162,
                              "column": 12
                            },
                            "end": {
                              "line": 162,
                              "column": 40
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 7479,
                            "end": 7483,
                            "loc": {
                              "start": {
                                "line": 162,
                                "column": 12
                              },
                              "end": {
                                "line": 162,
                                "column": 16
                              }
                            },
                            "name": "view"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 7486,
                            "end": 7507,
                            "loc": {
                              "start": {
                                "line": 162,
                                "column": 19
                              },
                              "end": {
                                "line": 162,
                                "column": 40
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 7486,
                              "end": 7494,
                              "loc": {
                                "start": {
                                  "line": 162,
                                  "column": 19
                                },
                                "end": {
                                  "line": 162,
                                  "column": 27
                                }
                              },
                              "name": "sketcher"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7495,
                              "end": 7507,
                              "loc": {
                                "start": {
                                  "line": 162,
                                  "column": 28
                                },
                                "end": {
                                  "line": 162,
                                  "column": 40
                                }
                              },
                              "name": "__parentView"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var",
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "add related constraints for removal (before objects)",
                          "start": 7518,
                          "end": 7572,
                          "loc": {
                            "start": {
                              "line": 164,
                              "column": 8
                            },
                            "end": {
                              "line": 164,
                              "column": 62
                            }
                          },
                          "range": [
                            7518,
                            7572
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 7581,
                      "end": 7636,
                      "loc": {
                        "start": {
                          "line": 165,
                          "column": 8
                        },
                        "end": {
                          "line": 165,
                          "column": 63
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 7585,
                          "end": 7635,
                          "loc": {
                            "start": {
                              "line": 165,
                              "column": 12
                            },
                            "end": {
                              "line": 165,
                              "column": 62
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 7585,
                            "end": 7594,
                            "loc": {
                              "start": {
                                "line": 165,
                                "column": 12
                              },
                              "end": {
                                "line": 165,
                                "column": 21
                              }
                            },
                            "name": "objectsCh",
                            "leadingComments": null
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 7597,
                            "end": 7635,
                            "loc": {
                              "start": {
                                "line": 165,
                                "column": 24
                              },
                              "end": {
                                "line": 165,
                                "column": 62
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 7597,
                              "end": 7626,
                              "loc": {
                                "start": {
                                  "line": 165,
                                  "column": 24
                                },
                                "end": {
                                  "line": 165,
                                  "column": 53
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 7597,
                                "end": 7603,
                                "loc": {
                                  "start": {
                                    "line": 165,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 165,
                                    "column": 30
                                  }
                                },
                                "name": "Sketch"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 7604,
                                "end": 7626,
                                "loc": {
                                  "start": {
                                    "line": 165,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 165,
                                    "column": 53
                                  }
                                },
                                "name": "ForObjectsWithChildren"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 7627,
                                "end": 7634,
                                "loc": {
                                  "start": {
                                    "line": 165,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 165,
                                    "column": 61
                                  }
                                },
                                "name": "objects"
                              }
                            ]
                          },
                          "leadingComments": null
                        }
                      ],
                      "kind": "var",
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "add related constraints for removal (before objects)",
                          "start": 7518,
                          "end": 7572,
                          "loc": {
                            "start": {
                              "line": 164,
                              "column": 8
                            },
                            "end": {
                              "line": 164,
                              "column": 62
                            }
                          },
                          "range": [
                            7518,
                            7572
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 7645,
                      "end": 7709,
                      "loc": {
                        "start": {
                          "line": 166,
                          "column": 8
                        },
                        "end": {
                          "line": 166,
                          "column": 72
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 7649,
                          "end": 7708,
                          "loc": {
                            "start": {
                              "line": 166,
                              "column": 12
                            },
                            "end": {
                              "line": 166,
                              "column": 71
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 7649,
                            "end": 7667,
                            "loc": {
                              "start": {
                                "line": 166,
                                "column": 12
                              },
                              "end": {
                                "line": 166,
                                "column": 30
                              }
                            },
                            "name": "relatedConstraints"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 7670,
                            "end": 7708,
                            "loc": {
                              "start": {
                                "line": 166,
                                "column": 33
                              },
                              "end": {
                                "line": 166,
                                "column": 71
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 7670,
                              "end": 7697,
                              "loc": {
                                "start": {
                                  "line": 166,
                                  "column": 33
                                },
                                "end": {
                                  "line": 166,
                                  "column": 60
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 7670,
                                "end": 7674,
                                "loc": {
                                  "start": {
                                    "line": 166,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 166,
                                    "column": 37
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 7675,
                                "end": 7697,
                                "loc": {
                                  "start": {
                                    "line": 166,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 166,
                                    "column": 60
                                  }
                                },
                                "name": "getConstraintsOnSketch"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 7698,
                                "end": 7707,
                                "loc": {
                                  "start": {
                                    "line": 166,
                                    "column": 61
                                  },
                                  "end": {
                                    "line": 166,
                                    "column": 70
                                  }
                                },
                                "name": "objectsCh"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 7718,
                      "end": 7817,
                      "loc": {
                        "start": {
                          "line": 167,
                          "column": 8
                        },
                        "end": {
                          "line": 167,
                          "column": 107
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 7718,
                        "end": 7816,
                        "loc": {
                          "start": {
                            "line": 167,
                            "column": 8
                          },
                          "end": {
                            "line": 167,
                            "column": 106
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 7718,
                          "end": 7725,
                          "loc": {
                            "start": {
                              "line": 167,
                              "column": 8
                            },
                            "end": {
                              "line": 167,
                              "column": 15
                            }
                          },
                          "name": "objects"
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 7728,
                          "end": 7816,
                          "loc": {
                            "start": {
                              "line": 167,
                              "column": 18
                            },
                            "end": {
                              "line": 167,
                              "column": 106
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 7728,
                            "end": 7753,
                            "loc": {
                              "start": {
                                "line": 167,
                                "column": 18
                              },
                              "end": {
                                "line": 167,
                                "column": 43
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 7728,
                              "end": 7746,
                              "loc": {
                                "start": {
                                  "line": 167,
                                  "column": 18
                                },
                                "end": {
                                  "line": 167,
                                  "column": 36
                                }
                              },
                              "name": "relatedConstraints"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7747,
                              "end": 7753,
                              "loc": {
                                "start": {
                                  "line": 167,
                                  "column": 37
                                },
                                "end": {
                                  "line": 167,
                                  "column": 43
                                }
                              },
                              "name": "concat"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "CallExpression",
                              "start": 7754,
                              "end": 7815,
                              "loc": {
                                "start": {
                                  "line": 167,
                                  "column": 44
                                },
                                "end": {
                                  "line": 167,
                                  "column": 105
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 7754,
                                "end": 7768,
                                "loc": {
                                  "start": {
                                    "line": 167,
                                    "column": 44
                                  },
                                  "end": {
                                    "line": 167,
                                    "column": 58
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 7754,
                                  "end": 7761,
                                  "loc": {
                                    "start": {
                                      "line": 167,
                                      "column": 44
                                    },
                                    "end": {
                                      "line": 167,
                                      "column": 51
                                    }
                                  },
                                  "name": "objects"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 7762,
                                  "end": 7768,
                                  "loc": {
                                    "start": {
                                      "line": 167,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 167,
                                      "column": 58
                                    }
                                  },
                                  "name": "filter"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ArrowFunctionExpression",
                                  "start": 7769,
                                  "end": 7814,
                                  "loc": {
                                    "start": {
                                      "line": 167,
                                      "column": 59
                                    },
                                    "end": {
                                      "line": 167,
                                      "column": 104
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": true,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 7769,
                                      "end": 7772,
                                      "loc": {
                                        "start": {
                                          "line": 167,
                                          "column": 59
                                        },
                                        "end": {
                                          "line": 167,
                                          "column": 62
                                        }
                                      },
                                      "name": "obj"
                                    }
                                  ],
                                  "body": {
                                    "type": "BinaryExpression",
                                    "start": 7776,
                                    "end": 7814,
                                    "loc": {
                                      "start": {
                                        "line": 167,
                                        "column": 66
                                      },
                                      "end": {
                                        "line": 167,
                                        "column": 104
                                      }
                                    },
                                    "left": {
                                      "type": "CallExpression",
                                      "start": 7776,
                                      "end": 7807,
                                      "loc": {
                                        "start": {
                                          "line": 167,
                                          "column": 66
                                        },
                                        "end": {
                                          "line": 167,
                                          "column": 97
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 7776,
                                        "end": 7802,
                                        "loc": {
                                          "start": {
                                            "line": 167,
                                            "column": 66
                                          },
                                          "end": {
                                            "line": 167,
                                            "column": 92
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 7776,
                                          "end": 7794,
                                          "loc": {
                                            "start": {
                                              "line": 167,
                                              "column": 66
                                            },
                                            "end": {
                                              "line": 167,
                                              "column": 84
                                            }
                                          },
                                          "name": "relatedConstraints"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 7795,
                                          "end": 7802,
                                          "loc": {
                                            "start": {
                                              "line": 167,
                                              "column": 85
                                            },
                                            "end": {
                                              "line": 167,
                                              "column": 92
                                            }
                                          },
                                          "name": "indexOf"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 7803,
                                          "end": 7806,
                                          "loc": {
                                            "start": {
                                              "line": 167,
                                              "column": 93
                                            },
                                            "end": {
                                              "line": 167,
                                              "column": 96
                                            }
                                          },
                                          "name": "obj"
                                        }
                                      ]
                                    },
                                    "operator": "===",
                                    "right": {
                                      "type": "UnaryExpression",
                                      "start": 7812,
                                      "end": 7814,
                                      "loc": {
                                        "start": {
                                          "line": 167,
                                          "column": 102
                                        },
                                        "end": {
                                          "line": 167,
                                          "column": 104
                                        }
                                      },
                                      "operator": "-",
                                      "prefix": true,
                                      "argument": {
                                        "type": "Literal",
                                        "start": 7813,
                                        "end": 7814,
                                        "loc": {
                                          "start": {
                                            "line": 167,
                                            "column": 103
                                          },
                                          "end": {
                                            "line": 167,
                                            "column": 104
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      }
                                    }
                                  }
                                }
                              ]
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 7826,
                      "end": 7929,
                      "loc": {
                        "start": {
                          "line": 168,
                          "column": 8
                        },
                        "end": {
                          "line": 168,
                          "column": 111
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 7826,
                        "end": 7928,
                        "loc": {
                          "start": {
                            "line": 168,
                            "column": 8
                          },
                          "end": {
                            "line": 168,
                            "column": 110
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 7826,
                          "end": 7835,
                          "loc": {
                            "start": {
                              "line": 168,
                              "column": 8
                            },
                            "end": {
                              "line": 168,
                              "column": 17
                            }
                          },
                          "name": "objectsCh"
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 7838,
                          "end": 7928,
                          "loc": {
                            "start": {
                              "line": 168,
                              "column": 20
                            },
                            "end": {
                              "line": 168,
                              "column": 110
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 7838,
                            "end": 7863,
                            "loc": {
                              "start": {
                                "line": 168,
                                "column": 20
                              },
                              "end": {
                                "line": 168,
                                "column": 45
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 7838,
                              "end": 7856,
                              "loc": {
                                "start": {
                                  "line": 168,
                                  "column": 20
                                },
                                "end": {
                                  "line": 168,
                                  "column": 38
                                }
                              },
                              "name": "relatedConstraints"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7857,
                              "end": 7863,
                              "loc": {
                                "start": {
                                  "line": 168,
                                  "column": 39
                                },
                                "end": {
                                  "line": 168,
                                  "column": 45
                                }
                              },
                              "name": "concat"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "CallExpression",
                              "start": 7864,
                              "end": 7927,
                              "loc": {
                                "start": {
                                  "line": 168,
                                  "column": 46
                                },
                                "end": {
                                  "line": 168,
                                  "column": 109
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 7864,
                                "end": 7880,
                                "loc": {
                                  "start": {
                                    "line": 168,
                                    "column": 46
                                  },
                                  "end": {
                                    "line": 168,
                                    "column": 62
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 7864,
                                  "end": 7873,
                                  "loc": {
                                    "start": {
                                      "line": 168,
                                      "column": 46
                                    },
                                    "end": {
                                      "line": 168,
                                      "column": 55
                                    }
                                  },
                                  "name": "objectsCh"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 7874,
                                  "end": 7880,
                                  "loc": {
                                    "start": {
                                      "line": 168,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 168,
                                      "column": 62
                                    }
                                  },
                                  "name": "filter"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ArrowFunctionExpression",
                                  "start": 7881,
                                  "end": 7926,
                                  "loc": {
                                    "start": {
                                      "line": 168,
                                      "column": 63
                                    },
                                    "end": {
                                      "line": 168,
                                      "column": 108
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": true,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 7881,
                                      "end": 7884,
                                      "loc": {
                                        "start": {
                                          "line": 168,
                                          "column": 63
                                        },
                                        "end": {
                                          "line": 168,
                                          "column": 66
                                        }
                                      },
                                      "name": "obj"
                                    }
                                  ],
                                  "body": {
                                    "type": "BinaryExpression",
                                    "start": 7888,
                                    "end": 7926,
                                    "loc": {
                                      "start": {
                                        "line": 168,
                                        "column": 70
                                      },
                                      "end": {
                                        "line": 168,
                                        "column": 108
                                      }
                                    },
                                    "left": {
                                      "type": "CallExpression",
                                      "start": 7888,
                                      "end": 7919,
                                      "loc": {
                                        "start": {
                                          "line": 168,
                                          "column": 70
                                        },
                                        "end": {
                                          "line": 168,
                                          "column": 101
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 7888,
                                        "end": 7914,
                                        "loc": {
                                          "start": {
                                            "line": 168,
                                            "column": 70
                                          },
                                          "end": {
                                            "line": 168,
                                            "column": 96
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 7888,
                                          "end": 7906,
                                          "loc": {
                                            "start": {
                                              "line": 168,
                                              "column": 70
                                            },
                                            "end": {
                                              "line": 168,
                                              "column": 88
                                            }
                                          },
                                          "name": "relatedConstraints"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 7907,
                                          "end": 7914,
                                          "loc": {
                                            "start": {
                                              "line": 168,
                                              "column": 89
                                            },
                                            "end": {
                                              "line": 168,
                                              "column": 96
                                            }
                                          },
                                          "name": "indexOf"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 7915,
                                          "end": 7918,
                                          "loc": {
                                            "start": {
                                              "line": 168,
                                              "column": 97
                                            },
                                            "end": {
                                              "line": 168,
                                              "column": 100
                                            }
                                          },
                                          "name": "obj"
                                        }
                                      ]
                                    },
                                    "operator": "===",
                                    "right": {
                                      "type": "UnaryExpression",
                                      "start": 7924,
                                      "end": 7926,
                                      "loc": {
                                        "start": {
                                          "line": 168,
                                          "column": 106
                                        },
                                        "end": {
                                          "line": 168,
                                          "column": 108
                                        }
                                      },
                                      "operator": "-",
                                      "prefix": true,
                                      "argument": {
                                        "type": "Literal",
                                        "start": 7925,
                                        "end": 7926,
                                        "loc": {
                                          "start": {
                                            "line": 168,
                                            "column": 107
                                          },
                                          "end": {
                                            "line": 168,
                                            "column": 108
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      }
                                    }
                                  }
                                }
                              ]
                            }
                          ]
                        }
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "remove all interactions first (including children)",
                          "start": 7939,
                          "end": 7991,
                          "loc": {
                            "start": {
                              "line": 170,
                              "column": 8
                            },
                            "end": {
                              "line": 170,
                              "column": 60
                            }
                          },
                          "range": [
                            7939,
                            7991
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 8000,
                      "end": 8121,
                      "loc": {
                        "start": {
                          "line": 171,
                          "column": 8
                        },
                        "end": {
                          "line": 174,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 8000,
                        "end": 8120,
                        "loc": {
                          "start": {
                            "line": 171,
                            "column": 8
                          },
                          "end": {
                            "line": 174,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 8000,
                          "end": 8017,
                          "loc": {
                            "start": {
                              "line": 171,
                              "column": 8
                            },
                            "end": {
                              "line": 171,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 8000,
                            "end": 8009,
                            "loc": {
                              "start": {
                                "line": 171,
                                "column": 8
                              },
                              "end": {
                                "line": 171,
                                "column": 17
                              }
                            },
                            "name": "objectsCh",
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 8010,
                            "end": 8017,
                            "loc": {
                              "start": {
                                "line": 171,
                                "column": 18
                              },
                              "end": {
                                "line": 171,
                                "column": 25
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 8018,
                            "end": 8119,
                            "loc": {
                              "start": {
                                "line": 171,
                                "column": 26
                              },
                              "end": {
                                "line": 174,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 8018,
                                "end": 8021,
                                "loc": {
                                  "start": {
                                    "line": 171,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 171,
                                    "column": 29
                                  }
                                },
                                "name": "obj"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 8025,
                              "end": 8119,
                              "loc": {
                                "start": {
                                  "line": 171,
                                  "column": 33
                                },
                                "end": {
                                  "line": 174,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 8039,
                                  "end": 8072,
                                  "loc": {
                                    "start": {
                                      "line": 172,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 172,
                                      "column": 45
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 8039,
                                    "end": 8071,
                                    "loc": {
                                      "start": {
                                        "line": 172,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 172,
                                        "column": 44
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 8039,
                                      "end": 8069,
                                      "loc": {
                                        "start": {
                                          "line": 172,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 172,
                                          "column": 42
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 8039,
                                        "end": 8051,
                                        "loc": {
                                          "start": {
                                            "line": 172,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 172,
                                            "column": 24
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 8039,
                                          "end": 8042,
                                          "loc": {
                                            "start": {
                                              "line": 172,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 172,
                                              "column": 15
                                            }
                                          },
                                          "name": "obj"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 8043,
                                          "end": 8051,
                                          "loc": {
                                            "start": {
                                              "line": 172,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 172,
                                              "column": 24
                                            }
                                          },
                                          "name": "interact"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 8052,
                                        "end": 8069,
                                        "loc": {
                                          "start": {
                                            "line": 172,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 172,
                                            "column": 42
                                          }
                                        },
                                        "name": "removeInteraction"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 8085,
                                  "end": 8109,
                                  "loc": {
                                    "start": {
                                      "line": 173,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 173,
                                      "column": 36
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 8085,
                                    "end": 8108,
                                    "loc": {
                                      "start": {
                                        "line": 173,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 173,
                                        "column": 35
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 8085,
                                      "end": 8106,
                                      "loc": {
                                        "start": {
                                          "line": 173,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 173,
                                          "column": 33
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 8085,
                                        "end": 8088,
                                        "loc": {
                                          "start": {
                                            "line": 173,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 173,
                                            "column": 15
                                          }
                                        },
                                        "name": "obj"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 8089,
                                        "end": 8106,
                                        "loc": {
                                          "start": {
                                            "line": 173,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 173,
                                            "column": 33
                                          }
                                        },
                                        "name": "removeInteraction"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                }
                              ]
                            }
                          }
                        ],
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "remove all interactions first (including children)",
                          "start": 7939,
                          "end": 7991,
                          "loc": {
                            "start": {
                              "line": 170,
                              "column": 8
                            },
                            "end": {
                              "line": 170,
                              "column": 60
                            }
                          },
                          "range": [
                            7939,
                            7991
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 8131,
                      "end": 8373,
                      "loc": {
                        "start": {
                          "line": 176,
                          "column": 8
                        },
                        "end": {
                          "line": 182,
                          "column": 10
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 8135,
                          "end": 8372,
                          "loc": {
                            "start": {
                              "line": 176,
                              "column": 12
                            },
                            "end": {
                              "line": 182,
                              "column": 9
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 8135,
                            "end": 8146,
                            "loc": {
                              "start": {
                                "line": 176,
                                "column": 12
                              },
                              "end": {
                                "line": 176,
                                "column": 23
                              }
                            },
                            "name": "afterServer"
                          },
                          "init": {
                            "type": "ArrowFunctionExpression",
                            "start": 8149,
                            "end": 8372,
                            "loc": {
                              "start": {
                                "line": 176,
                                "column": 26
                              },
                              "end": {
                                "line": 182,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [],
                            "body": {
                              "type": "BlockStatement",
                              "start": 8155,
                              "end": 8372,
                              "loc": {
                                "start": {
                                  "line": 176,
                                  "column": 32
                                },
                                "end": {
                                  "line": 182,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 8169,
                                  "end": 8362,
                                  "loc": {
                                    "start": {
                                      "line": 177,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 181,
                                      "column": 15
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 8169,
                                    "end": 8361,
                                    "loc": {
                                      "start": {
                                        "line": 177,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 181,
                                        "column": 14
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 8169,
                                      "end": 8184,
                                      "loc": {
                                        "start": {
                                          "line": 177,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 177,
                                          "column": 27
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 8169,
                                        "end": 8176,
                                        "loc": {
                                          "start": {
                                            "line": 177,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 177,
                                            "column": 19
                                          }
                                        },
                                        "name": "objects"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 8177,
                                        "end": 8184,
                                        "loc": {
                                          "start": {
                                            "line": 177,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 177,
                                            "column": 27
                                          }
                                        },
                                        "name": "forEach"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "ArrowFunctionExpression",
                                        "start": 8185,
                                        "end": 8360,
                                        "loc": {
                                          "start": {
                                            "line": 177,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 181,
                                            "column": 13
                                          }
                                        },
                                        "id": null,
                                        "generator": false,
                                        "expression": false,
                                        "async": false,
                                        "params": [
                                          {
                                            "type": "Identifier",
                                            "start": 8185,
                                            "end": 8188,
                                            "loc": {
                                              "start": {
                                                "line": 177,
                                                "column": 28
                                              },
                                              "end": {
                                                "line": 177,
                                                "column": 31
                                              }
                                            },
                                            "name": "obj"
                                          }
                                        ],
                                        "body": {
                                          "type": "BlockStatement",
                                          "start": 8192,
                                          "end": 8360,
                                          "loc": {
                                            "start": {
                                              "line": 177,
                                              "column": 35
                                            },
                                            "end": {
                                              "line": 181,
                                              "column": 13
                                            }
                                          },
                                          "body": [
                                            {
                                              "type": "IfStatement",
                                              "start": 8210,
                                              "end": 8249,
                                              "loc": {
                                                "start": {
                                                  "line": 178,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 178,
                                                  "column": 55
                                                }
                                              },
                                              "test": {
                                                "type": "MemberExpression",
                                                "start": 8214,
                                                "end": 8230,
                                                "loc": {
                                                  "start": {
                                                    "line": 178,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 178,
                                                    "column": 36
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 8214,
                                                  "end": 8221,
                                                  "loc": {
                                                    "start": {
                                                      "line": 178,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 178,
                                                      "column": 27
                                                    }
                                                  },
                                                  "name": "options"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 8222,
                                                  "end": 8230,
                                                  "loc": {
                                                    "start": {
                                                      "line": 178,
                                                      "column": 28
                                                    },
                                                    "end": {
                                                      "line": 178,
                                                      "column": 36
                                                    }
                                                  },
                                                  "name": "onClient"
                                                },
                                                "computed": false
                                              },
                                              "consequent": {
                                                "type": "ExpressionStatement",
                                                "start": 8232,
                                                "end": 8249,
                                                "loc": {
                                                  "start": {
                                                    "line": 178,
                                                    "column": 38
                                                  },
                                                  "end": {
                                                    "line": 178,
                                                    "column": 55
                                                  }
                                                },
                                                "expression": {
                                                  "type": "CallExpression",
                                                  "start": 8232,
                                                  "end": 8248,
                                                  "loc": {
                                                    "start": {
                                                      "line": 178,
                                                      "column": 38
                                                    },
                                                    "end": {
                                                      "line": 178,
                                                      "column": 54
                                                    }
                                                  },
                                                  "callee": {
                                                    "type": "MemberExpression",
                                                    "start": 8232,
                                                    "end": 8243,
                                                    "loc": {
                                                      "start": {
                                                        "line": 178,
                                                        "column": 38
                                                      },
                                                      "end": {
                                                        "line": 178,
                                                        "column": 49
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "ThisExpression",
                                                      "start": 8232,
                                                      "end": 8236,
                                                      "loc": {
                                                        "start": {
                                                          "line": 178,
                                                          "column": 38
                                                        },
                                                        "end": {
                                                          "line": 178,
                                                          "column": 42
                                                        }
                                                      }
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 8237,
                                                      "end": 8243,
                                                      "loc": {
                                                        "start": {
                                                          "line": 178,
                                                          "column": 43
                                                        },
                                                        "end": {
                                                          "line": 178,
                                                          "column": 49
                                                        }
                                                      },
                                                      "name": "remove"
                                                    },
                                                    "computed": false
                                                  },
                                                  "arguments": [
                                                    {
                                                      "type": "Identifier",
                                                      "start": 8244,
                                                      "end": 8247,
                                                      "loc": {
                                                        "start": {
                                                          "line": 178,
                                                          "column": 50
                                                        },
                                                        "end": {
                                                          "line": 178,
                                                          "column": 53
                                                        }
                                                      },
                                                      "name": "obj"
                                                    }
                                                  ]
                                                }
                                              },
                                              "alternate": null
                                            },
                                            {
                                              "type": "ExpressionStatement",
                                              "start": 8266,
                                              "end": 8297,
                                              "loc": {
                                                "start": {
                                                  "line": 179,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 179,
                                                  "column": 47
                                                }
                                              },
                                              "expression": {
                                                "type": "CallExpression",
                                                "start": 8266,
                                                "end": 8296,
                                                "loc": {
                                                  "start": {
                                                    "line": 179,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 179,
                                                    "column": 46
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 8266,
                                                  "end": 8291,
                                                  "loc": {
                                                    "start": {
                                                      "line": 179,
                                                      "column": 16
                                                    },
                                                    "end": {
                                                      "line": 179,
                                                      "column": 41
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 8266,
                                                    "end": 8284,
                                                    "loc": {
                                                      "start": {
                                                        "line": 179,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 179,
                                                        "column": 34
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "ThisExpression",
                                                      "start": 8266,
                                                      "end": 8270,
                                                      "loc": {
                                                        "start": {
                                                          "line": 179,
                                                          "column": 16
                                                        },
                                                        "end": {
                                                          "line": 179,
                                                          "column": 20
                                                        }
                                                      }
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 8271,
                                                      "end": 8284,
                                                      "loc": {
                                                        "start": {
                                                          "line": 179,
                                                          "column": 21
                                                        },
                                                        "end": {
                                                          "line": 179,
                                                          "column": 34
                                                        }
                                                      },
                                                      "name": "sketchObjects"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 8285,
                                                    "end": 8291,
                                                    "loc": {
                                                      "start": {
                                                        "line": 179,
                                                        "column": 35
                                                      },
                                                      "end": {
                                                        "line": 179,
                                                        "column": 41
                                                      }
                                                    },
                                                    "name": "delete"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 8292,
                                                    "end": 8295,
                                                    "loc": {
                                                      "start": {
                                                        "line": 179,
                                                        "column": 42
                                                      },
                                                      "end": {
                                                        "line": 179,
                                                        "column": 45
                                                      }
                                                    },
                                                    "name": "obj"
                                                  }
                                                ]
                                              }
                                            },
                                            {
                                              "type": "ExpressionStatement",
                                              "start": 8314,
                                              "end": 8346,
                                              "loc": {
                                                "start": {
                                                  "line": 180,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 180,
                                                  "column": 48
                                                }
                                              },
                                              "expression": {
                                                "type": "CallExpression",
                                                "start": 8314,
                                                "end": 8345,
                                                "loc": {
                                                  "start": {
                                                    "line": 180,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 180,
                                                    "column": 47
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 8314,
                                                  "end": 8323,
                                                  "loc": {
                                                    "start": {
                                                      "line": 180,
                                                      "column": 16
                                                    },
                                                    "end": {
                                                      "line": 180,
                                                      "column": 25
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "ThisExpression",
                                                    "start": 8314,
                                                    "end": 8318,
                                                    "loc": {
                                                      "start": {
                                                        "line": 180,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 180,
                                                        "column": 20
                                                      }
                                                    }
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 8319,
                                                    "end": 8323,
                                                    "loc": {
                                                      "start": {
                                                        "line": 180,
                                                        "column": 21
                                                      },
                                                      "end": {
                                                        "line": 180,
                                                        "column": 25
                                                      }
                                                    },
                                                    "name": "emit"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "Literal",
                                                    "start": 8324,
                                                    "end": 8339,
                                                    "loc": {
                                                      "start": {
                                                        "line": 180,
                                                        "column": 26
                                                      },
                                                      "end": {
                                                        "line": 180,
                                                        "column": 41
                                                      }
                                                    },
                                                    "value": "SketchRemoved",
                                                    "rawValue": "SketchRemoved",
                                                    "raw": "'SketchRemoved'"
                                                  },
                                                  {
                                                    "type": "Identifier",
                                                    "start": 8341,
                                                    "end": 8344,
                                                    "loc": {
                                                      "start": {
                                                        "line": 180,
                                                        "column": 43
                                                      },
                                                      "end": {
                                                        "line": 180,
                                                        "column": 46
                                                      }
                                                    },
                                                    "name": "obj"
                                                  }
                                                ]
                                              }
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  }
                                }
                              ]
                            }
                          }
                        }
                      ],
                      "kind": "var",
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " remove objects from the sketch on the server and, if successful, on the client",
                          "start": 8383,
                          "end": 8464,
                          "loc": {
                            "start": {
                              "line": 184,
                              "column": 8
                            },
                            "end": {
                              "line": 184,
                              "column": 89
                            }
                          },
                          "range": [
                            8383,
                            8464
                          ]
                        }
                      ]
                    },
                    {
                      "type": "IfStatement",
                      "start": 8473,
                      "end": 8749,
                      "loc": {
                        "start": {
                          "line": 185,
                          "column": 8
                        },
                        "end": {
                          "line": 188,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "MemberExpression",
                        "start": 8477,
                        "end": 8493,
                        "loc": {
                          "start": {
                            "line": 185,
                            "column": 12
                          },
                          "end": {
                            "line": 185,
                            "column": 28
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 8477,
                          "end": 8484,
                          "loc": {
                            "start": {
                              "line": 185,
                              "column": 12
                            },
                            "end": {
                              "line": 185,
                              "column": 19
                            }
                          },
                          "name": "options",
                          "leadingComments": null
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 8485,
                          "end": 8493,
                          "loc": {
                            "start": {
                              "line": 185,
                              "column": 20
                            },
                            "end": {
                              "line": 185,
                              "column": 28
                            }
                          },
                          "name": "onServer"
                        },
                        "computed": false,
                        "leadingComments": null
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 8495,
                        "end": 8749,
                        "loc": {
                          "start": {
                            "line": 185,
                            "column": 30
                          },
                          "end": {
                            "line": 188,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 8509,
                            "end": 8582,
                            "loc": {
                              "start": {
                                "line": 186,
                                "column": 12
                              },
                              "end": {
                                "line": 186,
                                "column": 85
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 8513,
                                "end": 8581,
                                "loc": {
                                  "start": {
                                    "line": 186,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 186,
                                    "column": 84
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 8513,
                                  "end": 8521,
                                  "loc": {
                                    "start": {
                                      "line": 186,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 186,
                                      "column": 24
                                    }
                                  },
                                  "name": "commands"
                                },
                                "init": {
                                  "type": "CallExpression",
                                  "start": 8524,
                                  "end": 8581,
                                  "loc": {
                                    "start": {
                                      "line": 186,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 186,
                                      "column": 84
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 8524,
                                    "end": 8535,
                                    "loc": {
                                      "start": {
                                        "line": 186,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 186,
                                        "column": 38
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 8524,
                                      "end": 8531,
                                      "loc": {
                                        "start": {
                                          "line": 186,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 186,
                                          "column": 34
                                        }
                                      },
                                      "name": "objects"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 8532,
                                      "end": 8535,
                                      "loc": {
                                        "start": {
                                          "line": 186,
                                          "column": 35
                                        },
                                        "end": {
                                          "line": 186,
                                          "column": 38
                                        }
                                      },
                                      "name": "map"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "ArrowFunctionExpression",
                                      "start": 8536,
                                      "end": 8580,
                                      "loc": {
                                        "start": {
                                          "line": 186,
                                          "column": 39
                                        },
                                        "end": {
                                          "line": 186,
                                          "column": 83
                                        }
                                      },
                                      "id": null,
                                      "generator": false,
                                      "expression": true,
                                      "async": false,
                                      "params": [
                                        {
                                          "type": "Identifier",
                                          "start": 8536,
                                          "end": 8542,
                                          "loc": {
                                            "start": {
                                              "line": 186,
                                              "column": 39
                                            },
                                            "end": {
                                              "line": 186,
                                              "column": 45
                                            }
                                          },
                                          "name": "object"
                                        }
                                      ],
                                      "body": {
                                        "type": "CallExpression",
                                        "start": 8546,
                                        "end": 8580,
                                        "loc": {
                                          "start": {
                                            "line": 186,
                                            "column": 49
                                          },
                                          "end": {
                                            "line": 186,
                                            "column": 83
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 8546,
                                          "end": 8574,
                                          "loc": {
                                            "start": {
                                              "line": 186,
                                              "column": 49
                                            },
                                            "end": {
                                              "line": 186,
                                              "column": 77
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 8546,
                                            "end": 8552,
                                            "loc": {
                                              "start": {
                                                "line": 186,
                                                "column": 49
                                              },
                                              "end": {
                                                "line": 186,
                                                "column": 55
                                              }
                                            },
                                            "name": "object"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 8553,
                                            "end": 8574,
                                            "loc": {
                                              "start": {
                                                "line": 186,
                                                "column": 56
                                              },
                                              "end": {
                                                "line": 186,
                                                "column": 77
                                              }
                                            },
                                            "name": "prepareRemoveOnServer"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "ThisExpression",
                                            "start": 8575,
                                            "end": 8579,
                                            "loc": {
                                              "start": {
                                                "line": 186,
                                                "column": 78
                                              },
                                              "end": {
                                                "line": 186,
                                                "column": 82
                                              }
                                            }
                                          }
                                        ]
                                      }
                                    }
                                  ]
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 8595,
                            "end": 8739,
                            "loc": {
                              "start": {
                                "line": 187,
                                "column": 12
                              },
                              "end": {
                                "line": 187,
                                "column": 156
                              }
                            },
                            "argument": {
                              "type": "CallExpression",
                              "start": 8602,
                              "end": 8738,
                              "loc": {
                                "start": {
                                  "line": 187,
                                  "column": 19
                                },
                                "end": {
                                  "line": 187,
                                  "column": 155
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 8602,
                                "end": 8725,
                                "loc": {
                                  "start": {
                                    "line": 187,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 187,
                                    "column": 142
                                  }
                                },
                                "object": {
                                  "type": "ConditionalExpression",
                                  "start": 8603,
                                  "end": 8719,
                                  "loc": {
                                    "start": {
                                      "line": 187,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 187,
                                      "column": 136
                                    }
                                  },
                                  "test": {
                                    "type": "MemberExpression",
                                    "start": 8603,
                                    "end": 8623,
                                    "loc": {
                                      "start": {
                                        "line": 187,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 187,
                                        "column": 40
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 8603,
                                      "end": 8610,
                                      "loc": {
                                        "start": {
                                          "line": 187,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 187,
                                          "column": 27
                                        }
                                      },
                                      "name": "options"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 8611,
                                      "end": 8623,
                                      "loc": {
                                        "start": {
                                          "line": 187,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 187,
                                          "column": 40
                                        }
                                      },
                                      "name": "updateSketch"
                                    },
                                    "computed": false
                                  },
                                  "consequent": {
                                    "type": "CallExpression",
                                    "start": 8626,
                                    "end": 8674,
                                    "loc": {
                                      "start": {
                                        "line": 187,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 187,
                                        "column": 91
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 8626,
                                      "end": 8647,
                                      "loc": {
                                        "start": {
                                          "line": 187,
                                          "column": 43
                                        },
                                        "end": {
                                          "line": 187,
                                          "column": 64
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 8626,
                                        "end": 8630,
                                        "loc": {
                                          "start": {
                                            "line": 187,
                                            "column": 43
                                          },
                                          "end": {
                                            "line": 187,
                                            "column": 47
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 8631,
                                        "end": 8647,
                                        "loc": {
                                          "start": {
                                            "line": 187,
                                            "column": 48
                                          },
                                          "end": {
                                            "line": 187,
                                            "column": 64
                                          }
                                        },
                                        "name": "updateFromServer"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "MemberExpression",
                                        "start": 8648,
                                        "end": 8663,
                                        "loc": {
                                          "start": {
                                            "line": 187,
                                            "column": 65
                                          },
                                          "end": {
                                            "line": 187,
                                            "column": 80
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 8648,
                                          "end": 8656,
                                          "loc": {
                                            "start": {
                                              "line": 187,
                                              "column": 65
                                            },
                                            "end": {
                                              "line": 187,
                                              "column": 73
                                            }
                                          },
                                          "name": "sketcher"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 8657,
                                          "end": 8663,
                                          "loc": {
                                            "start": {
                                              "line": 187,
                                              "column": 74
                                            },
                                            "end": {
                                              "line": 187,
                                              "column": 80
                                            }
                                          },
                                          "name": "server"
                                        },
                                        "computed": false
                                      },
                                      {
                                        "type": "Identifier",
                                        "start": 8665,
                                        "end": 8673,
                                        "loc": {
                                          "start": {
                                            "line": 187,
                                            "column": 82
                                          },
                                          "end": {
                                            "line": 187,
                                            "column": 90
                                          }
                                        },
                                        "name": "commands"
                                      }
                                    ]
                                  },
                                  "alternate": {
                                    "type": "CallExpression",
                                    "start": 8677,
                                    "end": 8719,
                                    "loc": {
                                      "start": {
                                        "line": 187,
                                        "column": 94
                                      },
                                      "end": {
                                        "line": 187,
                                        "column": 136
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 8677,
                                      "end": 8692,
                                      "loc": {
                                        "start": {
                                          "line": 187,
                                          "column": 94
                                        },
                                        "end": {
                                          "line": 187,
                                          "column": 109
                                        }
                                      },
                                      "name": "executePrepared"
                                    },
                                    "arguments": [
                                      {
                                        "type": "MemberExpression",
                                        "start": 8693,
                                        "end": 8708,
                                        "loc": {
                                          "start": {
                                            "line": 187,
                                            "column": 110
                                          },
                                          "end": {
                                            "line": 187,
                                            "column": 125
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 8693,
                                          "end": 8701,
                                          "loc": {
                                            "start": {
                                              "line": 187,
                                              "column": 110
                                            },
                                            "end": {
                                              "line": 187,
                                              "column": 118
                                            }
                                          },
                                          "name": "sketcher"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 8702,
                                          "end": 8708,
                                          "loc": {
                                            "start": {
                                              "line": 187,
                                              "column": 119
                                            },
                                            "end": {
                                              "line": 187,
                                              "column": 125
                                            }
                                          },
                                          "name": "server"
                                        },
                                        "computed": false
                                      },
                                      {
                                        "type": "Identifier",
                                        "start": 8710,
                                        "end": 8718,
                                        "loc": {
                                          "start": {
                                            "line": 187,
                                            "column": 127
                                          },
                                          "end": {
                                            "line": 187,
                                            "column": 135
                                          }
                                        },
                                        "name": "commands"
                                      }
                                    ]
                                  },
                                  "parenthesizedExpression": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 8721,
                                  "end": 8725,
                                  "loc": {
                                    "start": {
                                      "line": 187,
                                      "column": 138
                                    },
                                    "end": {
                                      "line": 187,
                                      "column": 142
                                    }
                                  },
                                  "name": "then"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 8726,
                                  "end": 8737,
                                  "loc": {
                                    "start": {
                                      "line": 187,
                                      "column": 143
                                    },
                                    "end": {
                                      "line": 187,
                                      "column": 154
                                    }
                                  },
                                  "name": "afterServer"
                                }
                              ]
                            }
                          }
                        ]
                      },
                      "alternate": null,
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " remove objects from the sketch on the server and, if successful, on the client",
                          "start": 8383,
                          "end": 8464,
                          "loc": {
                            "start": {
                              "line": 184,
                              "column": 8
                            },
                            "end": {
                              "line": 184,
                              "column": 89
                            }
                          },
                          "range": [
                            8383,
                            8464
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 8758,
                      "end": 8796,
                      "loc": {
                        "start": {
                          "line": 189,
                          "column": 8
                        },
                        "end": {
                          "line": 189,
                          "column": 46
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 8765,
                        "end": 8795,
                        "loc": {
                          "start": {
                            "line": 189,
                            "column": 15
                          },
                          "end": {
                            "line": 189,
                            "column": 45
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 8765,
                          "end": 8780,
                          "loc": {
                            "start": {
                              "line": 189,
                              "column": 15
                            },
                            "end": {
                              "line": 189,
                              "column": 30
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 8765,
                            "end": 8772,
                            "loc": {
                              "start": {
                                "line": 189,
                                "column": 15
                              },
                              "end": {
                                "line": 189,
                                "column": 22
                              }
                            },
                            "name": "Promise"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 8773,
                            "end": 8780,
                            "loc": {
                              "start": {
                                "line": 189,
                                "column": 23
                              },
                              "end": {
                                "line": 189,
                                "column": 30
                              }
                            },
                            "name": "resolve"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 8781,
                            "end": 8794,
                            "loc": {
                              "start": {
                                "line": 189,
                                "column": 31
                              },
                              "end": {
                                "line": 189,
                                "column": 44
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 8781,
                              "end": 8792,
                              "loc": {
                                "start": {
                                  "line": 189,
                                  "column": 31
                                },
                                "end": {
                                  "line": 189,
                                  "column": 42
                                }
                              },
                              "name": "afterServer"
                            },
                            "arguments": []
                          }
                        ]
                      }
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " Remove objects previously added with addToSketch",
                  "start": 7076,
                  "end": 7127,
                  "loc": {
                    "start": {
                      "line": 154,
                      "column": 4
                    },
                    "end": {
                      "line": 154,
                      "column": 55
                    }
                  },
                  "range": [
                    7076,
                    7127
                  ]
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " Return list of objects added with addToSketch (but not addAuxObject)",
                  "start": 8808,
                  "end": 8879,
                  "loc": {
                    "start": {
                      "line": 192,
                      "column": 4
                    },
                    "end": {
                      "line": 192,
                      "column": 75
                    }
                  },
                  "range": [
                    8808,
                    8879
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 8884,
              "end": 8981,
              "loc": {
                "start": {
                  "line": 193,
                  "column": 4
                },
                "end": {
                  "line": 195,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 8884,
                "end": 8902,
                "loc": {
                  "start": {
                    "line": 193,
                    "column": 4
                  },
                  "end": {
                    "line": 193,
                    "column": 22
                  }
                },
                "name": "getObjectsOnSketch",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 8902,
                "end": 8981,
                "loc": {
                  "start": {
                    "line": 193,
                    "column": 22
                  },
                  "end": {
                    "line": 195,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 8905,
                  "end": 8981,
                  "loc": {
                    "start": {
                      "line": 193,
                      "column": 25
                    },
                    "end": {
                      "line": 195,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 8915,
                      "end": 8975,
                      "loc": {
                        "start": {
                          "line": 194,
                          "column": 8
                        },
                        "end": {
                          "line": 194,
                          "column": 68
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 8922,
                        "end": 8974,
                        "loc": {
                          "start": {
                            "line": 194,
                            "column": 15
                          },
                          "end": {
                            "line": 194,
                            "column": 67
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 8922,
                          "end": 8942,
                          "loc": {
                            "start": {
                              "line": 194,
                              "column": 15
                            },
                            "end": {
                              "line": 194,
                              "column": 35
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 8922,
                            "end": 8935,
                            "loc": {
                              "start": {
                                "line": 194,
                                "column": 15
                              },
                              "end": {
                                "line": 194,
                                "column": 28
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 8922,
                              "end": 8926,
                              "loc": {
                                "start": {
                                  "line": 194,
                                  "column": 15
                                },
                                "end": {
                                  "line": 194,
                                  "column": 19
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 8927,
                              "end": 8935,
                              "loc": {
                                "start": {
                                  "line": 194,
                                  "column": 20
                                },
                                "end": {
                                  "line": 194,
                                  "column": 28
                                }
                              },
                              "name": "children"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 8936,
                            "end": 8942,
                            "loc": {
                              "start": {
                                "line": 194,
                                "column": 29
                              },
                              "end": {
                                "line": 194,
                                "column": 35
                              }
                            },
                            "name": "filter"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 8943,
                            "end": 8973,
                            "loc": {
                              "start": {
                                "line": 194,
                                "column": 36
                              },
                              "end": {
                                "line": 194,
                                "column": 66
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": true,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 8943,
                                "end": 8944,
                                "loc": {
                                  "start": {
                                    "line": 194,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 194,
                                    "column": 37
                                  }
                                },
                                "name": "c"
                              }
                            ],
                            "body": {
                              "type": "CallExpression",
                              "start": 8948,
                              "end": 8973,
                              "loc": {
                                "start": {
                                  "line": 194,
                                  "column": 41
                                },
                                "end": {
                                  "line": 194,
                                  "column": 66
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 8948,
                                "end": 8970,
                                "loc": {
                                  "start": {
                                    "line": 194,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 194,
                                    "column": 63
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 8948,
                                  "end": 8966,
                                  "loc": {
                                    "start": {
                                      "line": 194,
                                      "column": 41
                                    },
                                    "end": {
                                      "line": 194,
                                      "column": 59
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 8948,
                                    "end": 8952,
                                    "loc": {
                                      "start": {
                                        "line": 194,
                                        "column": 41
                                      },
                                      "end": {
                                        "line": 194,
                                        "column": 45
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 8953,
                                    "end": 8966,
                                    "loc": {
                                      "start": {
                                        "line": 194,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 194,
                                        "column": 59
                                      }
                                    },
                                    "name": "sketchObjects"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 8967,
                                  "end": 8970,
                                  "loc": {
                                    "start": {
                                      "line": 194,
                                      "column": 60
                                    },
                                    "end": {
                                      "line": 194,
                                      "column": 63
                                    }
                                  },
                                  "name": "has"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 8971,
                                  "end": 8972,
                                  "loc": {
                                    "start": {
                                      "line": 194,
                                      "column": 64
                                    },
                                    "end": {
                                      "line": 194,
                                      "column": 65
                                    }
                                  },
                                  "name": "c"
                                }
                              ]
                            }
                          }
                        ]
                      }
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " Return list of objects added with addToSketch (but not addAuxObject)",
                  "start": 8808,
                  "end": 8879,
                  "loc": {
                    "start": {
                      "line": 192,
                      "column": 4
                    },
                    "end": {
                      "line": 192,
                      "column": 75
                    }
                  },
                  "range": [
                    8808,
                    8879
                  ]
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " Return list of constraints related to passed object or objects,",
                  "start": 8987,
                  "end": 9053,
                  "loc": {
                    "start": {
                      "line": 197,
                      "column": 4
                    },
                    "end": {
                      "line": 197,
                      "column": 70
                    }
                  },
                  "range": [
                    8987,
                    9053
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " or list of all constraints, if 'objects' parameter is undefined",
                  "start": 9058,
                  "end": 9124,
                  "loc": {
                    "start": {
                      "line": 198,
                      "column": 4
                    },
                    "end": {
                      "line": 198,
                      "column": 70
                    }
                  },
                  "range": [
                    9058,
                    9124
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 9129,
              "end": 9566,
              "loc": {
                "start": {
                  "line": 199,
                  "column": 4
                },
                "end": {
                  "line": 209,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 9129,
                "end": 9151,
                "loc": {
                  "start": {
                    "line": 199,
                    "column": 4
                  },
                  "end": {
                    "line": 199,
                    "column": 26
                  }
                },
                "name": "getConstraintsOnSketch",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 9151,
                "end": 9566,
                "loc": {
                  "start": {
                    "line": 199,
                    "column": 26
                  },
                  "end": {
                    "line": 209,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 9152,
                    "end": 9159,
                    "loc": {
                      "start": {
                        "line": 199,
                        "column": 27
                      },
                      "end": {
                        "line": 199,
                        "column": 34
                      }
                    },
                    "name": "objects"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 9161,
                  "end": 9566,
                  "loc": {
                    "start": {
                      "line": 199,
                      "column": 36
                    },
                    "end": {
                      "line": 209,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 9171,
                      "end": 9213,
                      "loc": {
                        "start": {
                          "line": 200,
                          "column": 8
                        },
                        "end": {
                          "line": 200,
                          "column": 50
                        }
                      },
                      "test": {
                        "type": "Identifier",
                        "start": 9175,
                        "end": 9182,
                        "loc": {
                          "start": {
                            "line": 200,
                            "column": 12
                          },
                          "end": {
                            "line": 200,
                            "column": 19
                          }
                        },
                        "name": "objects"
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 9184,
                        "end": 9213,
                        "loc": {
                          "start": {
                            "line": 200,
                            "column": 21
                          },
                          "end": {
                            "line": 200,
                            "column": 50
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 9184,
                          "end": 9212,
                          "loc": {
                            "start": {
                              "line": 200,
                              "column": 21
                            },
                            "end": {
                              "line": 200,
                              "column": 49
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "Identifier",
                            "start": 9184,
                            "end": 9191,
                            "loc": {
                              "start": {
                                "line": 200,
                                "column": 21
                              },
                              "end": {
                                "line": 200,
                                "column": 28
                              }
                            },
                            "name": "objects"
                          },
                          "right": {
                            "type": "CallExpression",
                            "start": 9194,
                            "end": 9212,
                            "loc": {
                              "start": {
                                "line": 200,
                                "column": 31
                              },
                              "end": {
                                "line": 200,
                                "column": 49
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 9194,
                              "end": 9203,
                              "loc": {
                                "start": {
                                  "line": 200,
                                  "column": 31
                                },
                                "end": {
                                  "line": 200,
                                  "column": 40
                                }
                              },
                              "object": {
                                "type": "ArrayExpression",
                                "start": 9194,
                                "end": 9196,
                                "loc": {
                                  "start": {
                                    "line": 200,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 200,
                                    "column": 33
                                  }
                                },
                                "elements": []
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 9197,
                                "end": 9203,
                                "loc": {
                                  "start": {
                                    "line": 200,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 200,
                                    "column": 40
                                  }
                                },
                                "name": "concat"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 9204,
                                "end": 9211,
                                "loc": {
                                  "start": {
                                    "line": 200,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 200,
                                    "column": 48
                                  }
                                },
                                "name": "objects"
                              }
                            ]
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 9223,
                      "end": 9294,
                      "loc": {
                        "start": {
                          "line": 202,
                          "column": 8
                        },
                        "end": {
                          "line": 202,
                          "column": 79
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 9227,
                          "end": 9293,
                          "loc": {
                            "start": {
                              "line": 202,
                              "column": 12
                            },
                            "end": {
                              "line": 202,
                              "column": 78
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 9227,
                            "end": 9240,
                            "loc": {
                              "start": {
                                "line": 202,
                                "column": 12
                              },
                              "end": {
                                "line": 202,
                                "column": 25
                              }
                            },
                            "name": "inObjectsList"
                          },
                          "init": {
                            "type": "ArrowFunctionExpression",
                            "start": 9244,
                            "end": 9292,
                            "loc": {
                              "start": {
                                "line": 202,
                                "column": 29
                              },
                              "end": {
                                "line": 202,
                                "column": 77
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": true,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 9244,
                                "end": 9248,
                                "loc": {
                                  "start": {
                                    "line": 202,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 202,
                                    "column": 33
                                  }
                                },
                                "name": "elem"
                              }
                            ],
                            "body": {
                              "type": "LogicalExpression",
                              "start": 9252,
                              "end": 9292,
                              "loc": {
                                "start": {
                                  "line": 202,
                                  "column": 37
                                },
                                "end": {
                                  "line": 202,
                                  "column": 77
                                }
                              },
                              "left": {
                                "type": "UnaryExpression",
                                "start": 9252,
                                "end": 9260,
                                "loc": {
                                  "start": {
                                    "line": 202,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 202,
                                    "column": 45
                                  }
                                },
                                "operator": "!",
                                "prefix": true,
                                "argument": {
                                  "type": "Identifier",
                                  "start": 9253,
                                  "end": 9260,
                                  "loc": {
                                    "start": {
                                      "line": 202,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 202,
                                      "column": 45
                                    }
                                  },
                                  "name": "objects"
                                }
                              },
                              "operator": "||",
                              "right": {
                                "type": "BinaryExpression",
                                "start": 9264,
                                "end": 9292,
                                "loc": {
                                  "start": {
                                    "line": 202,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 202,
                                    "column": 77
                                  }
                                },
                                "left": {
                                  "type": "CallExpression",
                                  "start": 9264,
                                  "end": 9285,
                                  "loc": {
                                    "start": {
                                      "line": 202,
                                      "column": 49
                                    },
                                    "end": {
                                      "line": 202,
                                      "column": 70
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 9264,
                                    "end": 9279,
                                    "loc": {
                                      "start": {
                                        "line": 202,
                                        "column": 49
                                      },
                                      "end": {
                                        "line": 202,
                                        "column": 64
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 9264,
                                      "end": 9271,
                                      "loc": {
                                        "start": {
                                          "line": 202,
                                          "column": 49
                                        },
                                        "end": {
                                          "line": 202,
                                          "column": 56
                                        }
                                      },
                                      "name": "objects"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 9272,
                                      "end": 9279,
                                      "loc": {
                                        "start": {
                                          "line": 202,
                                          "column": 57
                                        },
                                        "end": {
                                          "line": 202,
                                          "column": 64
                                        }
                                      },
                                      "name": "indexOf"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 9280,
                                      "end": 9284,
                                      "loc": {
                                        "start": {
                                          "line": 202,
                                          "column": 65
                                        },
                                        "end": {
                                          "line": 202,
                                          "column": 69
                                        }
                                      },
                                      "name": "elem"
                                    }
                                  ]
                                },
                                "operator": "!==",
                                "right": {
                                  "type": "UnaryExpression",
                                  "start": 9290,
                                  "end": 9292,
                                  "loc": {
                                    "start": {
                                      "line": 202,
                                      "column": 75
                                    },
                                    "end": {
                                      "line": 202,
                                      "column": 77
                                    }
                                  },
                                  "operator": "-",
                                  "prefix": true,
                                  "argument": {
                                    "type": "Literal",
                                    "start": 9291,
                                    "end": 9292,
                                    "loc": {
                                      "start": {
                                        "line": 202,
                                        "column": 76
                                      },
                                      "end": {
                                        "line": 202,
                                        "column": 77
                                      }
                                    },
                                    "value": 1,
                                    "rawValue": 1,
                                    "raw": "1"
                                  }
                                }
                              }
                            },
                            "parenthesizedExpression": true
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 9303,
                      "end": 9372,
                      "loc": {
                        "start": {
                          "line": 203,
                          "column": 8
                        },
                        "end": {
                          "line": 203,
                          "column": 77
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 9307,
                          "end": 9371,
                          "loc": {
                            "start": {
                              "line": 203,
                              "column": 12
                            },
                            "end": {
                              "line": 203,
                              "column": 76
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 9307,
                            "end": 9325,
                            "loc": {
                              "start": {
                                "line": 203,
                                "column": 12
                              },
                              "end": {
                                "line": 203,
                                "column": 30
                              }
                            },
                            "name": "isRelatedToObjects"
                          },
                          "init": {
                            "type": "ArrowFunctionExpression",
                            "start": 9329,
                            "end": 9370,
                            "loc": {
                              "start": {
                                "line": 203,
                                "column": 34
                              },
                              "end": {
                                "line": 203,
                                "column": 75
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": true,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 9329,
                                "end": 9335,
                                "loc": {
                                  "start": {
                                    "line": 203,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 203,
                                    "column": 40
                                  }
                                },
                                "name": "constr"
                              }
                            ],
                            "body": {
                              "type": "CallExpression",
                              "start": 9339,
                              "end": 9370,
                              "loc": {
                                "start": {
                                  "line": 203,
                                  "column": 44
                                },
                                "end": {
                                  "line": 203,
                                  "column": 75
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 9339,
                                "end": 9355,
                                "loc": {
                                  "start": {
                                    "line": 203,
                                    "column": 44
                                  },
                                  "end": {
                                    "line": 203,
                                    "column": 60
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 9339,
                                  "end": 9350,
                                  "loc": {
                                    "start": {
                                      "line": 203,
                                      "column": 44
                                    },
                                    "end": {
                                      "line": 203,
                                      "column": 55
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 9339,
                                    "end": 9345,
                                    "loc": {
                                      "start": {
                                        "line": 203,
                                        "column": 44
                                      },
                                      "end": {
                                        "line": 203,
                                        "column": 50
                                      }
                                    },
                                    "name": "constr"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9346,
                                    "end": 9350,
                                    "loc": {
                                      "start": {
                                        "line": 203,
                                        "column": 51
                                      },
                                      "end": {
                                        "line": 203,
                                        "column": 55
                                      }
                                    },
                                    "name": "args"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 9351,
                                  "end": 9355,
                                  "loc": {
                                    "start": {
                                      "line": 203,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 203,
                                      "column": 60
                                    }
                                  },
                                  "name": "some"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 9356,
                                  "end": 9369,
                                  "loc": {
                                    "start": {
                                      "line": 203,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 203,
                                      "column": 74
                                    }
                                  },
                                  "name": "inObjectsList"
                                }
                              ]
                            },
                            "parenthesizedExpression": true
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 9382,
                      "end": 9528,
                      "loc": {
                        "start": {
                          "line": 205,
                          "column": 8
                        },
                        "end": {
                          "line": 207,
                          "column": 40
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 9386,
                          "end": 9527,
                          "loc": {
                            "start": {
                              "line": 205,
                              "column": 12
                            },
                            "end": {
                              "line": 207,
                              "column": 39
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 9386,
                            "end": 9401,
                            "loc": {
                              "start": {
                                "line": 205,
                                "column": 12
                              },
                              "end": {
                                "line": 205,
                                "column": 27
                              }
                            },
                            "name": "constraintsList"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 9404,
                            "end": 9527,
                            "loc": {
                              "start": {
                                "line": 205,
                                "column": 30
                              },
                              "end": {
                                "line": 207,
                                "column": 39
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 9404,
                              "end": 9507,
                              "loc": {
                                "start": {
                                  "line": 205,
                                  "column": 30
                                },
                                "end": {
                                  "line": 207,
                                  "column": 19
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 9404,
                                "end": 9487,
                                "loc": {
                                  "start": {
                                    "line": 205,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 206,
                                    "column": 57
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 9404,
                                  "end": 9449,
                                  "loc": {
                                    "start": {
                                      "line": 205,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 206,
                                      "column": 19
                                    }
                                  },
                                  "object": {
                                    "type": "CallExpression",
                                    "start": 9404,
                                    "end": 9429,
                                    "loc": {
                                      "start": {
                                        "line": 205,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 205,
                                        "column": 55
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 9404,
                                      "end": 9427,
                                      "loc": {
                                        "start": {
                                          "line": 205,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 205,
                                          "column": 53
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 9404,
                                        "end": 9408,
                                        "loc": {
                                          "start": {
                                            "line": 205,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 205,
                                            "column": 34
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 9409,
                                        "end": 9427,
                                        "loc": {
                                          "start": {
                                            "line": 205,
                                            "column": 35
                                          },
                                          "end": {
                                            "line": 205,
                                            "column": 53
                                          }
                                        },
                                        "name": "getObjectsOnSketch"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9443,
                                    "end": 9449,
                                    "loc": {
                                      "start": {
                                        "line": 206,
                                        "column": 13
                                      },
                                      "end": {
                                        "line": 206,
                                        "column": 19
                                      }
                                    },
                                    "name": "filter"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "ArrowFunctionExpression",
                                    "start": 9450,
                                    "end": 9486,
                                    "loc": {
                                      "start": {
                                        "line": 206,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 206,
                                        "column": 56
                                      }
                                    },
                                    "id": null,
                                    "generator": false,
                                    "expression": true,
                                    "async": false,
                                    "params": [
                                      {
                                        "type": "Identifier",
                                        "start": 9450,
                                        "end": 9455,
                                        "loc": {
                                          "start": {
                                            "line": 206,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 206,
                                            "column": 25
                                          }
                                        },
                                        "name": "child"
                                      }
                                    ],
                                    "body": {
                                      "type": "BinaryExpression",
                                      "start": 9459,
                                      "end": 9486,
                                      "loc": {
                                        "start": {
                                          "line": 206,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 206,
                                          "column": 56
                                        }
                                      },
                                      "left": {
                                        "type": "Identifier",
                                        "start": 9459,
                                        "end": 9464,
                                        "loc": {
                                          "start": {
                                            "line": 206,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 206,
                                            "column": 34
                                          }
                                        },
                                        "name": "child"
                                      },
                                      "operator": "instanceof",
                                      "right": {
                                        "type": "Identifier",
                                        "start": 9476,
                                        "end": 9486,
                                        "loc": {
                                          "start": {
                                            "line": 206,
                                            "column": 46
                                          },
                                          "end": {
                                            "line": 206,
                                            "column": 56
                                          }
                                        },
                                        "name": "Constraint"
                                      }
                                    }
                                  }
                                ]
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 9501,
                                "end": 9507,
                                "loc": {
                                  "start": {
                                    "line": 207,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 207,
                                    "column": 19
                                  }
                                },
                                "name": "filter"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 9508,
                                "end": 9526,
                                "loc": {
                                  "start": {
                                    "line": 207,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 207,
                                    "column": 38
                                  }
                                },
                                "name": "isRelatedToObjects"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 9537,
                      "end": 9560,
                      "loc": {
                        "start": {
                          "line": 208,
                          "column": 8
                        },
                        "end": {
                          "line": 208,
                          "column": 31
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 9544,
                        "end": 9559,
                        "loc": {
                          "start": {
                            "line": 208,
                            "column": 15
                          },
                          "end": {
                            "line": 208,
                            "column": 30
                          }
                        },
                        "name": "constraintsList"
                      }
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " Return list of constraints related to passed object or objects,",
                  "start": 8987,
                  "end": 9053,
                  "loc": {
                    "start": {
                      "line": 197,
                      "column": 4
                    },
                    "end": {
                      "line": 197,
                      "column": 70
                    }
                  },
                  "range": [
                    8987,
                    9053
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " or list of all constraints, if 'objects' parameter is undefined",
                  "start": 9058,
                  "end": 9124,
                  "loc": {
                    "start": {
                      "line": 198,
                      "column": 4
                    },
                    "end": {
                      "line": 198,
                      "column": 70
                    }
                  },
                  "range": [
                    9058,
                    9124
                  ]
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " Return ancestor of the object that is directly lying on the sketch",
                  "start": 9572,
                  "end": 9641,
                  "loc": {
                    "start": {
                      "line": 211,
                      "column": 4
                    },
                    "end": {
                      "line": 211,
                      "column": 73
                    }
                  },
                  "range": [
                    9572,
                    9641
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 9646,
              "end": 9840,
              "loc": {
                "start": {
                  "line": 212,
                  "column": 4
                },
                "end": {
                  "line": 218,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 9646,
                "end": 9665,
                "loc": {
                  "start": {
                    "line": 212,
                    "column": 4
                  },
                  "end": {
                    "line": 212,
                    "column": 23
                  }
                },
                "name": "getAncestorOnSketch",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 9665,
                "end": 9840,
                "loc": {
                  "start": {
                    "line": 212,
                    "column": 23
                  },
                  "end": {
                    "line": 218,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 9666,
                    "end": 9672,
                    "loc": {
                      "start": {
                        "line": 212,
                        "column": 24
                      },
                      "end": {
                        "line": 212,
                        "column": 30
                      }
                    },
                    "name": "object"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 9674,
                  "end": 9840,
                  "loc": {
                    "start": {
                      "line": 212,
                      "column": 32
                    },
                    "end": {
                      "line": 218,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 9684,
                      "end": 9811,
                      "loc": {
                        "start": {
                          "line": 213,
                          "column": 8
                        },
                        "end": {
                          "line": 216,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 9684,
                        "end": 9810,
                        "loc": {
                          "start": {
                            "line": 213,
                            "column": 8
                          },
                          "end": {
                            "line": 216,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 9684,
                          "end": 9708,
                          "loc": {
                            "start": {
                              "line": 213,
                              "column": 8
                            },
                            "end": {
                              "line": 213,
                              "column": 32
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 9684,
                            "end": 9690,
                            "loc": {
                              "start": {
                                "line": 213,
                                "column": 8
                              },
                              "end": {
                                "line": 213,
                                "column": 14
                              }
                            },
                            "name": "object"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 9691,
                            "end": 9708,
                            "loc": {
                              "start": {
                                "line": 213,
                                "column": 15
                              },
                              "end": {
                                "line": 213,
                                "column": 32
                              }
                            },
                            "name": "traverseAncestors"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 9709,
                            "end": 9809,
                            "loc": {
                              "start": {
                                "line": 213,
                                "column": 33
                              },
                              "end": {
                                "line": 216,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 9709,
                                "end": 9717,
                                "loc": {
                                  "start": {
                                    "line": 213,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 213,
                                    "column": 41
                                  }
                                },
                                "name": "ancestor"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 9721,
                              "end": 9809,
                              "loc": {
                                "start": {
                                  "line": 213,
                                  "column": 45
                                },
                                "end": {
                                  "line": 216,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "IfStatement",
                                  "start": 9735,
                                  "end": 9799,
                                  "loc": {
                                    "start": {
                                      "line": 214,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 215,
                                      "column": 34
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 9739,
                                    "end": 9763,
                                    "loc": {
                                      "start": {
                                        "line": 214,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 214,
                                        "column": 40
                                      }
                                    },
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 9739,
                                      "end": 9754,
                                      "loc": {
                                        "start": {
                                          "line": 214,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 214,
                                          "column": 31
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 9739,
                                        "end": 9747,
                                        "loc": {
                                          "start": {
                                            "line": 214,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 214,
                                            "column": 24
                                          }
                                        },
                                        "name": "ancestor"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 9748,
                                        "end": 9754,
                                        "loc": {
                                          "start": {
                                            "line": 214,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 214,
                                            "column": 31
                                          }
                                        },
                                        "name": "parent"
                                      },
                                      "computed": false
                                    },
                                    "operator": "===",
                                    "right": {
                                      "type": "ThisExpression",
                                      "start": 9759,
                                      "end": 9763,
                                      "loc": {
                                        "start": {
                                          "line": 214,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 214,
                                          "column": 40
                                        }
                                      }
                                    }
                                  },
                                  "consequent": {
                                    "type": "ExpressionStatement",
                                    "start": 9781,
                                    "end": 9799,
                                    "loc": {
                                      "start": {
                                        "line": 215,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 215,
                                        "column": 34
                                      }
                                    },
                                    "expression": {
                                      "type": "AssignmentExpression",
                                      "start": 9781,
                                      "end": 9798,
                                      "loc": {
                                        "start": {
                                          "line": 215,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 215,
                                          "column": 33
                                        }
                                      },
                                      "operator": "=",
                                      "left": {
                                        "type": "Identifier",
                                        "start": 9781,
                                        "end": 9787,
                                        "loc": {
                                          "start": {
                                            "line": 215,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 215,
                                            "column": 22
                                          }
                                        },
                                        "name": "object"
                                      },
                                      "right": {
                                        "type": "Identifier",
                                        "start": 9790,
                                        "end": 9798,
                                        "loc": {
                                          "start": {
                                            "line": 215,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 215,
                                            "column": 33
                                          }
                                        },
                                        "name": "ancestor"
                                      }
                                    }
                                  },
                                  "alternate": null
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 9820,
                      "end": 9834,
                      "loc": {
                        "start": {
                          "line": 217,
                          "column": 8
                        },
                        "end": {
                          "line": 217,
                          "column": 22
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 9827,
                        "end": 9833,
                        "loc": {
                          "start": {
                            "line": 217,
                            "column": 15
                          },
                          "end": {
                            "line": 217,
                            "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": 9572,
                  "end": 9641,
                  "loc": {
                    "start": {
                      "line": 211,
                      "column": 4
                    },
                    "end": {
                      "line": 211,
                      "column": 73
                    }
                  },
                  "range": [
                    9572,
                    9641
                  ]
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " Return true if object was added with addToSketch",
                  "start": 9846,
                  "end": 9897,
                  "loc": {
                    "start": {
                      "line": 220,
                      "column": 4
                    },
                    "end": {
                      "line": 220,
                      "column": 55
                    }
                  },
                  "range": [
                    9846,
                    9897
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 9902,
              "end": 9975,
              "loc": {
                "start": {
                  "line": 221,
                  "column": 4
                },
                "end": {
                  "line": 223,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 9902,
                "end": 9912,
                "loc": {
                  "start": {
                    "line": 221,
                    "column": 4
                  },
                  "end": {
                    "line": 221,
                    "column": 14
                  }
                },
                "name": "isOnSketch",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 9912,
                "end": 9975,
                "loc": {
                  "start": {
                    "line": 221,
                    "column": 14
                  },
                  "end": {
                    "line": 223,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 9913,
                    "end": 9919,
                    "loc": {
                      "start": {
                        "line": 221,
                        "column": 15
                      },
                      "end": {
                        "line": 221,
                        "column": 21
                      }
                    },
                    "name": "object"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 9921,
                  "end": 9975,
                  "loc": {
                    "start": {
                      "line": 221,
                      "column": 23
                    },
                    "end": {
                      "line": 223,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 9931,
                      "end": 9969,
                      "loc": {
                        "start": {
                          "line": 222,
                          "column": 8
                        },
                        "end": {
                          "line": 222,
                          "column": 46
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 9938,
                        "end": 9968,
                        "loc": {
                          "start": {
                            "line": 222,
                            "column": 15
                          },
                          "end": {
                            "line": 222,
                            "column": 45
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 9938,
                          "end": 9960,
                          "loc": {
                            "start": {
                              "line": 222,
                              "column": 15
                            },
                            "end": {
                              "line": 222,
                              "column": 37
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 9938,
                            "end": 9956,
                            "loc": {
                              "start": {
                                "line": 222,
                                "column": 15
                              },
                              "end": {
                                "line": 222,
                                "column": 33
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 9938,
                              "end": 9942,
                              "loc": {
                                "start": {
                                  "line": 222,
                                  "column": 15
                                },
                                "end": {
                                  "line": 222,
                                  "column": 19
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9943,
                              "end": 9956,
                              "loc": {
                                "start": {
                                  "line": 222,
                                  "column": 20
                                },
                                "end": {
                                  "line": 222,
                                  "column": 33
                                }
                              },
                              "name": "sketchObjects"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 9957,
                            "end": 9960,
                            "loc": {
                              "start": {
                                "line": 222,
                                "column": 34
                              },
                              "end": {
                                "line": 222,
                                "column": 37
                              }
                            },
                            "name": "has"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 9961,
                            "end": 9967,
                            "loc": {
                              "start": {
                                "line": 222,
                                "column": 38
                              },
                              "end": {
                                "line": 222,
                                "column": 44
                              }
                            },
                            "name": "object"
                          }
                        ]
                      }
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " Return true if object was added with addToSketch",
                  "start": 9846,
                  "end": 9897,
                  "loc": {
                    "start": {
                      "line": 220,
                      "column": 4
                    },
                    "end": {
                      "line": 220,
                      "column": 55
                    }
                  },
                  "range": [
                    9846,
                    9897
                  ]
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " Add auxiliary objects which shouldn't physically be on the sketch",
                  "start": 9981,
                  "end": 10049,
                  "loc": {
                    "start": {
                      "line": 225,
                      "column": 4
                    },
                    "end": {
                      "line": 225,
                      "column": 72
                    }
                  },
                  "range": [
                    9981,
                    10049
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " These objects will be displayed in sketch coordinates but not returned from getObjectsOnSketch",
                  "start": 10054,
                  "end": 10151,
                  "loc": {
                    "start": {
                      "line": 226,
                      "column": 4
                    },
                    "end": {
                      "line": 226,
                      "column": 101
                    }
                  },
                  "range": [
                    10054,
                    10151
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " Example of such objects: sketch's grid, preview line segment for polyline being created",
                  "start": 10156,
                  "end": 10246,
                  "loc": {
                    "start": {
                      "line": 227,
                      "column": 4
                    },
                    "end": {
                      "line": 227,
                      "column": 94
                    }
                  },
                  "range": [
                    10156,
                    10246
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 10251,
              "end": 10952,
              "loc": {
                "start": {
                  "line": 228,
                  "column": 4
                },
                "end": {
                  "line": 240,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 10251,
                "end": 10263,
                "loc": {
                  "start": {
                    "line": 228,
                    "column": 4
                  },
                  "end": {
                    "line": 228,
                    "column": 16
                  }
                },
                "name": "addAuxObject",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 10263,
                "end": 10952,
                "loc": {
                  "start": {
                    "line": 228,
                    "column": 16
                  },
                  "end": {
                    "line": 240,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 10264,
                    "end": 10271,
                    "loc": {
                      "start": {
                        "line": 228,
                        "column": 17
                      },
                      "end": {
                        "line": 228,
                        "column": 24
                      }
                    },
                    "name": "objects",
                    "leadingComments": null,
                    "trailingComments": [
                      {
                        "type": "Block",
                        "value": ", options",
                        "start": 10271,
                        "end": 10284,
                        "loc": {
                          "start": {
                            "line": 228,
                            "column": 24
                          },
                          "end": {
                            "line": 228,
                            "column": 37
                          }
                        },
                        "range": [
                          10271,
                          10284
                        ]
                      }
                    ]
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 10286,
                  "end": 10952,
                  "loc": {
                    "start": {
                      "line": 228,
                      "column": 39
                    },
                    "end": {
                      "line": 240,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 10296,
                      "end": 10325,
                      "loc": {
                        "start": {
                          "line": 229,
                          "column": 8
                        },
                        "end": {
                          "line": 229,
                          "column": 37
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 10296,
                        "end": 10324,
                        "loc": {
                          "start": {
                            "line": 229,
                            "column": 8
                          },
                          "end": {
                            "line": 229,
                            "column": 36
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 10296,
                          "end": 10303,
                          "loc": {
                            "start": {
                              "line": 229,
                              "column": 8
                            },
                            "end": {
                              "line": 229,
                              "column": 15
                            }
                          },
                          "name": "objects",
                          "leadingComments": null
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 10306,
                          "end": 10324,
                          "loc": {
                            "start": {
                              "line": 229,
                              "column": 18
                            },
                            "end": {
                              "line": 229,
                              "column": 36
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 10306,
                            "end": 10315,
                            "loc": {
                              "start": {
                                "line": 229,
                                "column": 18
                              },
                              "end": {
                                "line": 229,
                                "column": 27
                              }
                            },
                            "object": {
                              "type": "ArrayExpression",
                              "start": 10306,
                              "end": 10308,
                              "loc": {
                                "start": {
                                  "line": 229,
                                  "column": 18
                                },
                                "end": {
                                  "line": 229,
                                  "column": 20
                                }
                              },
                              "elements": []
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 10309,
                              "end": 10315,
                              "loc": {
                                "start": {
                                  "line": 229,
                                  "column": 21
                                },
                                "end": {
                                  "line": 229,
                                  "column": 27
                                }
                              },
                              "name": "concat"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 10316,
                              "end": 10323,
                              "loc": {
                                "start": {
                                  "line": 229,
                                  "column": 28
                                },
                                "end": {
                                  "line": 229,
                                  "column": 35
                                }
                              },
                              "name": "objects"
                            }
                          ]
                        },
                        "leadingComments": null
                      },
                      "leadingComments": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 10334,
                      "end": 10372,
                      "loc": {
                        "start": {
                          "line": 230,
                          "column": 8
                        },
                        "end": {
                          "line": 230,
                          "column": 46
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 10338,
                          "end": 10371,
                          "loc": {
                            "start": {
                              "line": 230,
                              "column": 12
                            },
                            "end": {
                              "line": 230,
                              "column": 45
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 10338,
                            "end": 10342,
                            "loc": {
                              "start": {
                                "line": 230,
                                "column": 12
                              },
                              "end": {
                                "line": 230,
                                "column": 16
                              }
                            },
                            "name": "view"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 10345,
                            "end": 10371,
                            "loc": {
                              "start": {
                                "line": 230,
                                "column": 19
                              },
                              "end": {
                                "line": 230,
                                "column": 45
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 10345,
                              "end": 10358,
                              "loc": {
                                "start": {
                                  "line": 230,
                                  "column": 19
                                },
                                "end": {
                                  "line": 230,
                                  "column": 32
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 10345,
                                "end": 10349,
                                "loc": {
                                  "start": {
                                    "line": 230,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 230,
                                    "column": 23
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 10350,
                                "end": 10358,
                                "loc": {
                                  "start": {
                                    "line": 230,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 230,
                                    "column": 32
                                  }
                                },
                                "name": "sketcher"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 10359,
                              "end": 10371,
                              "loc": {
                                "start": {
                                  "line": 230,
                                  "column": 33
                                },
                                "end": {
                                  "line": 230,
                                  "column": 45
                                }
                              },
                              "name": "__parentView"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var",
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " we can't automatically remove objects from the sketch because",
                          "start": 10381,
                          "end": 10445,
                          "loc": {
                            "start": {
                              "line": 231,
                              "column": 8
                            },
                            "end": {
                              "line": 231,
                              "column": 72
                            }
                          },
                          "range": [
                            10381,
                            10445
                          ]
                        },
                        {
                          "type": "CommentLine",
                          "value": " it's an asynchronous action; this function should be synchronous",
                          "start": 10454,
                          "end": 10521,
                          "loc": {
                            "start": {
                              "line": 232,
                              "column": 8
                            },
                            "end": {
                              "line": 232,
                              "column": 75
                            }
                          },
                          "range": [
                            10454,
                            10521
                          ]
                        }
                      ]
                    },
                    {
                      "type": "IfStatement",
                      "start": 10530,
                      "end": 10693,
                      "loc": {
                        "start": {
                          "line": 233,
                          "column": 8
                        },
                        "end": {
                          "line": 234,
                          "column": 85
                        }
                      },
                      "test": {
                        "type": "CallExpression",
                        "start": 10534,
                        "end": 10606,
                        "loc": {
                          "start": {
                            "line": 233,
                            "column": 12
                          },
                          "end": {
                            "line": 233,
                            "column": 84
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 10534,
                          "end": 10546,
                          "loc": {
                            "start": {
                              "line": 233,
                              "column": 12
                            },
                            "end": {
                              "line": 233,
                              "column": 24
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 10534,
                            "end": 10541,
                            "loc": {
                              "start": {
                                "line": 233,
                                "column": 12
                              },
                              "end": {
                                "line": 233,
                                "column": 19
                              }
                            },
                            "name": "objects",
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 10542,
                            "end": 10546,
                            "loc": {
                              "start": {
                                "line": 233,
                                "column": 20
                              },
                              "end": {
                                "line": 233,
                                "column": 24
                              }
                            },
                            "name": "some"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "arguments": [
                          {
                            "type": "FunctionExpression",
                            "start": 10547,
                            "end": 10599,
                            "loc": {
                              "start": {
                                "line": 233,
                                "column": 25
                              },
                              "end": {
                                "line": 233,
                                "column": 77
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 10556,
                                "end": 10562,
                                "loc": {
                                  "start": {
                                    "line": 233,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 233,
                                    "column": 40
                                  }
                                },
                                "name": "object"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 10564,
                              "end": 10599,
                              "loc": {
                                "start": {
                                  "line": 233,
                                  "column": 42
                                },
                                "end": {
                                  "line": 233,
                                  "column": 77
                                }
                              },
                              "body": [
                                {
                                  "type": "ReturnStatement",
                                  "start": 10566,
                                  "end": 10597,
                                  "loc": {
                                    "start": {
                                      "line": 233,
                                      "column": 44
                                    },
                                    "end": {
                                      "line": 233,
                                      "column": 75
                                    }
                                  },
                                  "argument": {
                                    "type": "CallExpression",
                                    "start": 10573,
                                    "end": 10596,
                                    "loc": {
                                      "start": {
                                        "line": 233,
                                        "column": 51
                                      },
                                      "end": {
                                        "line": 233,
                                        "column": 74
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 10573,
                                      "end": 10588,
                                      "loc": {
                                        "start": {
                                          "line": 233,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 233,
                                          "column": 66
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 10573,
                                        "end": 10577,
                                        "loc": {
                                          "start": {
                                            "line": 233,
                                            "column": 51
                                          },
                                          "end": {
                                            "line": 233,
                                            "column": 55
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 10578,
                                        "end": 10588,
                                        "loc": {
                                          "start": {
                                            "line": 233,
                                            "column": 56
                                          },
                                          "end": {
                                            "line": 233,
                                            "column": 66
                                          }
                                        },
                                        "name": "isOnSketch"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 10589,
                                        "end": 10595,
                                        "loc": {
                                          "start": {
                                            "line": 233,
                                            "column": 67
                                          },
                                          "end": {
                                            "line": 233,
                                            "column": 73
                                          }
                                        },
                                        "name": "object"
                                      }
                                    ]
                                  }
                                }
                              ]
                            }
                          },
                          {
                            "type": "ThisExpression",
                            "start": 10601,
                            "end": 10605,
                            "loc": {
                              "start": {
                                "line": 233,
                                "column": 79
                              },
                              "end": {
                                "line": 233,
                                "column": 83
                              }
                            }
                          }
                        ],
                        "leadingComments": null
                      },
                      "consequent": {
                        "type": "ThrowStatement",
                        "start": 10620,
                        "end": 10693,
                        "loc": {
                          "start": {
                            "line": 234,
                            "column": 12
                          },
                          "end": {
                            "line": 234,
                            "column": 85
                          }
                        },
                        "argument": {
                          "type": "Literal",
                          "start": 10626,
                          "end": 10692,
                          "loc": {
                            "start": {
                              "line": 234,
                              "column": 18
                            },
                            "end": {
                              "line": 234,
                              "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": 10381,
                          "end": 10445,
                          "loc": {
                            "start": {
                              "line": 231,
                              "column": 8
                            },
                            "end": {
                              "line": 231,
                              "column": 72
                            }
                          },
                          "range": [
                            10381,
                            10445
                          ]
                        },
                        {
                          "type": "CommentLine",
                          "value": " it's an asynchronous action; this function should be synchronous",
                          "start": 10454,
                          "end": 10521,
                          "loc": {
                            "start": {
                              "line": 232,
                              "column": 8
                            },
                            "end": {
                              "line": 232,
                              "column": 75
                            }
                          },
                          "range": [
                            10454,
                            10521
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 10702,
                      "end": 10946,
                      "loc": {
                        "start": {
                          "line": 235,
                          "column": 8
                        },
                        "end": {
                          "line": 239,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 10702,
                        "end": 10945,
                        "loc": {
                          "start": {
                            "line": 235,
                            "column": 8
                          },
                          "end": {
                            "line": 239,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 10702,
                          "end": 10717,
                          "loc": {
                            "start": {
                              "line": 235,
                              "column": 8
                            },
                            "end": {
                              "line": 235,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 10702,
                            "end": 10709,
                            "loc": {
                              "start": {
                                "line": 235,
                                "column": 8
                              },
                              "end": {
                                "line": 235,
                                "column": 15
                              }
                            },
                            "name": "objects"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 10710,
                            "end": 10717,
                            "loc": {
                              "start": {
                                "line": 235,
                                "column": 16
                              },
                              "end": {
                                "line": 235,
                                "column": 23
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 10718,
                            "end": 10944,
                            "loc": {
                              "start": {
                                "line": 235,
                                "column": 24
                              },
                              "end": {
                                "line": 239,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 10718,
                                "end": 10721,
                                "loc": {
                                  "start": {
                                    "line": 235,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 235,
                                    "column": 27
                                  }
                                },
                                "name": "obj"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 10725,
                              "end": 10944,
                              "loc": {
                                "start": {
                                  "line": 235,
                                  "column": 31
                                },
                                "end": {
                                  "line": 239,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 10739,
                                  "end": 10753,
                                  "loc": {
                                    "start": {
                                      "line": 236,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 236,
                                      "column": 26
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 10739,
                                    "end": 10752,
                                    "loc": {
                                      "start": {
                                        "line": 236,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 236,
                                        "column": 25
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 10739,
                                      "end": 10747,
                                      "loc": {
                                        "start": {
                                          "line": 236,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 236,
                                          "column": 20
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 10739,
                                        "end": 10743,
                                        "loc": {
                                          "start": {
                                            "line": 236,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 236,
                                            "column": 16
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 10744,
                                        "end": 10747,
                                        "loc": {
                                          "start": {
                                            "line": 236,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 236,
                                            "column": 20
                                          }
                                        },
                                        "name": "add"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 10748,
                                        "end": 10751,
                                        "loc": {
                                          "start": {
                                            "line": 236,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 236,
                                            "column": 24
                                          }
                                        },
                                        "name": "obj"
                                      }
                                    ]
                                  },
                                  "trailingComments": [
                                    {
                                      "type": "CommentLine",
                                      "value": "note: some auxilliary objects have custom visualization system (e.g. sketch grid and box)",
                                      "start": 10766,
                                      "end": 10857,
                                      "loc": {
                                        "start": {
                                          "line": 237,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 237,
                                          "column": 103
                                        }
                                      },
                                      "range": [
                                        10766,
                                        10857
                                      ]
                                    }
                                  ]
                                },
                                {
                                  "type": "TryStatement",
                                  "start": 10870,
                                  "end": 10934,
                                  "loc": {
                                    "start": {
                                      "line": 238,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 238,
                                      "column": 76
                                    }
                                  },
                                  "block": {
                                    "type": "BlockStatement",
                                    "start": 10874,
                                    "end": 10920,
                                    "loc": {
                                      "start": {
                                        "line": 238,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 238,
                                        "column": 62
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 10876,
                                        "end": 10918,
                                        "loc": {
                                          "start": {
                                            "line": 238,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 238,
                                            "column": 60
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 10876,
                                          "end": 10917,
                                          "loc": {
                                            "start": {
                                              "line": 238,
                                              "column": 18
                                            },
                                            "end": {
                                              "line": 238,
                                              "column": 59
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 10876,
                                            "end": 10906,
                                            "loc": {
                                              "start": {
                                                "line": 238,
                                                "column": 18
                                              },
                                              "end": {
                                                "line": 238,
                                                "column": 48
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 10876,
                                              "end": 10884,
                                              "loc": {
                                                "start": {
                                                  "line": 238,
                                                  "column": 18
                                                },
                                                "end": {
                                                  "line": 238,
                                                  "column": 26
                                                }
                                              },
                                              "name": "Sketcher",
                                              "leadingComments": null
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 10885,
                                              "end": 10906,
                                              "loc": {
                                                "start": {
                                                  "line": 238,
                                                  "column": 27
                                                },
                                                "end": {
                                                  "line": 238,
                                                  "column": 48
                                                }
                                              },
                                              "name": "registerVisualization"
                                            },
                                            "computed": false,
                                            "leadingComments": null
                                          },
                                          "arguments": [
                                            {
                                              "type": "Identifier",
                                              "start": 10907,
                                              "end": 10911,
                                              "loc": {
                                                "start": {
                                                  "line": 238,
                                                  "column": 49
                                                },
                                                "end": {
                                                  "line": 238,
                                                  "column": 53
                                                }
                                              },
                                              "name": "view"
                                            },
                                            {
                                              "type": "Identifier",
                                              "start": 10913,
                                              "end": 10916,
                                              "loc": {
                                                "start": {
                                                  "line": 238,
                                                  "column": 55
                                                },
                                                "end": {
                                                  "line": 238,
                                                  "column": 58
                                                }
                                              },
                                              "name": "obj"
                                            }
                                          ],
                                          "leadingComments": null
                                        },
                                        "leadingComments": null
                                      }
                                    ],
                                    "leadingComments": null
                                  },
                                  "handler": {
                                    "type": "CatchClause",
                                    "start": 10921,
                                    "end": 10934,
                                    "loc": {
                                      "start": {
                                        "line": 238,
                                        "column": 63
                                      },
                                      "end": {
                                        "line": 238,
                                        "column": 76
                                      }
                                    },
                                    "param": {
                                      "type": "Identifier",
                                      "start": 10927,
                                      "end": 10930,
                                      "loc": {
                                        "start": {
                                          "line": 238,
                                          "column": 69
                                        },
                                        "end": {
                                          "line": 238,
                                          "column": 72
                                        }
                                      },
                                      "name": "err"
                                    },
                                    "body": {
                                      "type": "BlockStatement",
                                      "start": 10932,
                                      "end": 10934,
                                      "loc": {
                                        "start": {
                                          "line": 238,
                                          "column": 74
                                        },
                                        "end": {
                                          "line": 238,
                                          "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": 10766,
                                      "end": 10857,
                                      "loc": {
                                        "start": {
                                          "line": 237,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 237,
                                          "column": 103
                                        }
                                      },
                                      "range": [
                                        10766,
                                        10857
                                      ]
                                    }
                                  ]
                                }
                              ]
                            }
                          }
                        ]
                      }
                    }
                  ],
                  "leadingComments": [
                    {
                      "type": "Block",
                      "value": ", options",
                      "start": 10271,
                      "end": 10284,
                      "loc": {
                        "start": {
                          "line": 228,
                          "column": 24
                        },
                        "end": {
                          "line": 228,
                          "column": 37
                        }
                      },
                      "range": [
                        10271,
                        10284
                      ]
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " Add auxiliary objects which shouldn't physically be on the sketch",
                  "start": 9981,
                  "end": 10049,
                  "loc": {
                    "start": {
                      "line": 225,
                      "column": 4
                    },
                    "end": {
                      "line": 225,
                      "column": 72
                    }
                  },
                  "range": [
                    9981,
                    10049
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " These objects will be displayed in sketch coordinates but not returned from getObjectsOnSketch",
                  "start": 10054,
                  "end": 10151,
                  "loc": {
                    "start": {
                      "line": 226,
                      "column": 4
                    },
                    "end": {
                      "line": 226,
                      "column": 101
                    }
                  },
                  "range": [
                    10054,
                    10151
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " Example of such objects: sketch's grid, preview line segment for polyline being created",
                  "start": 10156,
                  "end": 10246,
                  "loc": {
                    "start": {
                      "line": 227,
                      "column": 4
                    },
                    "end": {
                      "line": 227,
                      "column": 94
                    }
                  },
                  "range": [
                    10156,
                    10246
                  ]
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " Remove objects previously added with addAuxObject",
                  "start": 10958,
                  "end": 11010,
                  "loc": {
                    "start": {
                      "line": 242,
                      "column": 4
                    },
                    "end": {
                      "line": 242,
                      "column": 56
                    }
                  },
                  "range": [
                    10958,
                    11010
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 11015,
              "end": 11220,
              "loc": {
                "start": {
                  "line": 243,
                  "column": 4
                },
                "end": {
                  "line": 249,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 11015,
                "end": 11030,
                "loc": {
                  "start": {
                    "line": 243,
                    "column": 4
                  },
                  "end": {
                    "line": 243,
                    "column": 19
                  }
                },
                "name": "removeAuxObject",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 11030,
                "end": 11220,
                "loc": {
                  "start": {
                    "line": 243,
                    "column": 19
                  },
                  "end": {
                    "line": 249,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 11031,
                    "end": 11038,
                    "loc": {
                      "start": {
                        "line": 243,
                        "column": 20
                      },
                      "end": {
                        "line": 243,
                        "column": 27
                      }
                    },
                    "name": "objects",
                    "leadingComments": null,
                    "trailingComments": [
                      {
                        "type": "Block",
                        "value": ", options",
                        "start": 11038,
                        "end": 11051,
                        "loc": {
                          "start": {
                            "line": 243,
                            "column": 27
                          },
                          "end": {
                            "line": 243,
                            "column": 40
                          }
                        },
                        "range": [
                          11038,
                          11051
                        ]
                      }
                    ]
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 11053,
                  "end": 11220,
                  "loc": {
                    "start": {
                      "line": 243,
                      "column": 42
                    },
                    "end": {
                      "line": 249,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 11063,
                      "end": 11092,
                      "loc": {
                        "start": {
                          "line": 244,
                          "column": 8
                        },
                        "end": {
                          "line": 244,
                          "column": 37
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 11063,
                        "end": 11091,
                        "loc": {
                          "start": {
                            "line": 244,
                            "column": 8
                          },
                          "end": {
                            "line": 244,
                            "column": 36
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 11063,
                          "end": 11070,
                          "loc": {
                            "start": {
                              "line": 244,
                              "column": 8
                            },
                            "end": {
                              "line": 244,
                              "column": 15
                            }
                          },
                          "name": "objects",
                          "leadingComments": null
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 11073,
                          "end": 11091,
                          "loc": {
                            "start": {
                              "line": 244,
                              "column": 18
                            },
                            "end": {
                              "line": 244,
                              "column": 36
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 11073,
                            "end": 11082,
                            "loc": {
                              "start": {
                                "line": 244,
                                "column": 18
                              },
                              "end": {
                                "line": 244,
                                "column": 27
                              }
                            },
                            "object": {
                              "type": "ArrayExpression",
                              "start": 11073,
                              "end": 11075,
                              "loc": {
                                "start": {
                                  "line": 244,
                                  "column": 18
                                },
                                "end": {
                                  "line": 244,
                                  "column": 20
                                }
                              },
                              "elements": []
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11076,
                              "end": 11082,
                              "loc": {
                                "start": {
                                  "line": 244,
                                  "column": 21
                                },
                                "end": {
                                  "line": 244,
                                  "column": 27
                                }
                              },
                              "name": "concat"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 11083,
                              "end": 11090,
                              "loc": {
                                "start": {
                                  "line": 244,
                                  "column": 28
                                },
                                "end": {
                                  "line": 244,
                                  "column": 35
                                }
                              },
                              "name": "objects"
                            }
                          ]
                        },
                        "leadingComments": null
                      },
                      "leadingComments": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 11101,
                      "end": 11139,
                      "loc": {
                        "start": {
                          "line": 245,
                          "column": 8
                        },
                        "end": {
                          "line": 245,
                          "column": 46
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 11105,
                          "end": 11138,
                          "loc": {
                            "start": {
                              "line": 245,
                              "column": 12
                            },
                            "end": {
                              "line": 245,
                              "column": 45
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 11105,
                            "end": 11109,
                            "loc": {
                              "start": {
                                "line": 245,
                                "column": 12
                              },
                              "end": {
                                "line": 245,
                                "column": 16
                              }
                            },
                            "name": "view"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 11112,
                            "end": 11138,
                            "loc": {
                              "start": {
                                "line": 245,
                                "column": 19
                              },
                              "end": {
                                "line": 245,
                                "column": 45
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 11112,
                              "end": 11125,
                              "loc": {
                                "start": {
                                  "line": 245,
                                  "column": 19
                                },
                                "end": {
                                  "line": 245,
                                  "column": 32
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 11112,
                                "end": 11116,
                                "loc": {
                                  "start": {
                                    "line": 245,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 245,
                                    "column": 23
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11117,
                                "end": 11125,
                                "loc": {
                                  "start": {
                                    "line": 245,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 245,
                                    "column": 32
                                  }
                                },
                                "name": "sketcher"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11126,
                              "end": 11138,
                              "loc": {
                                "start": {
                                  "line": 245,
                                  "column": 33
                                },
                                "end": {
                                  "line": 245,
                                  "column": 45
                                }
                              },
                              "name": "__parentView"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 11148,
                      "end": 11214,
                      "loc": {
                        "start": {
                          "line": 246,
                          "column": 8
                        },
                        "end": {
                          "line": 248,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 11148,
                        "end": 11213,
                        "loc": {
                          "start": {
                            "line": 246,
                            "column": 8
                          },
                          "end": {
                            "line": 248,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 11148,
                          "end": 11163,
                          "loc": {
                            "start": {
                              "line": 246,
                              "column": 8
                            },
                            "end": {
                              "line": 246,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 11148,
                            "end": 11155,
                            "loc": {
                              "start": {
                                "line": 246,
                                "column": 8
                              },
                              "end": {
                                "line": 246,
                                "column": 15
                              }
                            },
                            "name": "objects"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11156,
                            "end": 11163,
                            "loc": {
                              "start": {
                                "line": 246,
                                "column": 16
                              },
                              "end": {
                                "line": 246,
                                "column": 23
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 11164,
                            "end": 11212,
                            "loc": {
                              "start": {
                                "line": 246,
                                "column": 24
                              },
                              "end": {
                                "line": 248,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 11164,
                                "end": 11167,
                                "loc": {
                                  "start": {
                                    "line": 246,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 246,
                                    "column": 27
                                  }
                                },
                                "name": "obj"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 11171,
                              "end": 11212,
                              "loc": {
                                "start": {
                                  "line": 246,
                                  "column": 31
                                },
                                "end": {
                                  "line": 248,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 11185,
                                  "end": 11202,
                                  "loc": {
                                    "start": {
                                      "line": 247,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 247,
                                      "column": 29
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 11185,
                                    "end": 11201,
                                    "loc": {
                                      "start": {
                                        "line": 247,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 247,
                                        "column": 28
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 11185,
                                      "end": 11196,
                                      "loc": {
                                        "start": {
                                          "line": 247,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 247,
                                          "column": 23
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 11185,
                                        "end": 11189,
                                        "loc": {
                                          "start": {
                                            "line": 247,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 247,
                                            "column": 16
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 11190,
                                        "end": 11196,
                                        "loc": {
                                          "start": {
                                            "line": 247,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 247,
                                            "column": 23
                                          }
                                        },
                                        "name": "remove"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 11197,
                                        "end": 11200,
                                        "loc": {
                                          "start": {
                                            "line": 247,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 247,
                                            "column": 27
                                          }
                                        },
                                        "name": "obj"
                                      }
                                    ]
                                  }
                                }
                              ]
                            }
                          }
                        ]
                      }
                    }
                  ],
                  "leadingComments": [
                    {
                      "type": "Block",
                      "value": ", options",
                      "start": 11038,
                      "end": 11051,
                      "loc": {
                        "start": {
                          "line": 243,
                          "column": 27
                        },
                        "end": {
                          "line": 243,
                          "column": 40
                        }
                      },
                      "range": [
                        11038,
                        11051
                      ]
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " Remove objects previously added with addAuxObject",
                  "start": 10958,
                  "end": 11010,
                  "loc": {
                    "start": {
                      "line": 242,
                      "column": 4
                    },
                    "end": {
                      "line": 242,
                      "column": 56
                    }
                  },
                  "range": [
                    10958,
                    11010
                  ]
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " customize ClassCadObject interface add/remove member function to track sketchObjects",
                  "start": 11226,
                  "end": 11313,
                  "loc": {
                    "start": {
                      "line": 251,
                      "column": 4
                    },
                    "end": {
                      "line": 251,
                      "column": 91
                    }
                  },
                  "range": [
                    11226,
                    11313
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 11318,
              "end": 11545,
              "loc": {
                "start": {
                  "line": 252,
                  "column": 4
                },
                "end": {
                  "line": 256,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 11318,
                "end": 11327,
                "loc": {
                  "start": {
                    "line": 252,
                    "column": 4
                  },
                  "end": {
                    "line": 252,
                    "column": 13
                  }
                },
                "name": "addMember",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 11327,
                "end": 11545,
                "loc": {
                  "start": {
                    "line": 252,
                    "column": 13
                  },
                  "end": {
                    "line": 256,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 11328,
                    "end": 11334,
                    "loc": {
                      "start": {
                        "line": 252,
                        "column": 14
                      },
                      "end": {
                        "line": 252,
                        "column": 20
                      }
                    },
                    "name": "member"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 11336,
                  "end": 11545,
                  "loc": {
                    "start": {
                      "line": 252,
                      "column": 22
                    },
                    "end": {
                      "line": 256,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 11346,
                      "end": 11404,
                      "loc": {
                        "start": {
                          "line": 253,
                          "column": 8
                        },
                        "end": {
                          "line": 253,
                          "column": 66
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 11346,
                        "end": 11403,
                        "loc": {
                          "start": {
                            "line": 253,
                            "column": 8
                          },
                          "end": {
                            "line": 253,
                            "column": 65
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 11346,
                          "end": 11386,
                          "loc": {
                            "start": {
                              "line": 253,
                              "column": 8
                            },
                            "end": {
                              "line": 253,
                              "column": 48
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 11346,
                            "end": 11380,
                            "loc": {
                              "start": {
                                "line": 253,
                                "column": 8
                              },
                              "end": {
                                "line": 253,
                                "column": 42
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 11346,
                              "end": 11370,
                              "loc": {
                                "start": {
                                  "line": 253,
                                  "column": 8
                                },
                                "end": {
                                  "line": 253,
                                  "column": 32
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 11346,
                                "end": 11360,
                                "loc": {
                                  "start": {
                                    "line": 253,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 253,
                                    "column": 22
                                  }
                                },
                                "name": "ClassCadObject"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11361,
                                "end": 11370,
                                "loc": {
                                  "start": {
                                    "line": 253,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 253,
                                    "column": 32
                                  }
                                },
                                "name": "prototype"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11371,
                              "end": 11380,
                              "loc": {
                                "start": {
                                  "line": 253,
                                  "column": 33
                                },
                                "end": {
                                  "line": 253,
                                  "column": 42
                                }
                              },
                              "name": "addMember"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11381,
                            "end": 11386,
                            "loc": {
                              "start": {
                                "line": 253,
                                "column": 43
                              },
                              "end": {
                                "line": 253,
                                "column": 48
                              }
                            },
                            "name": "apply"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ThisExpression",
                            "start": 11387,
                            "end": 11391,
                            "loc": {
                              "start": {
                                "line": 253,
                                "column": 49
                              },
                              "end": {
                                "line": 253,
                                "column": 53
                              }
                            }
                          },
                          {
                            "type": "Identifier",
                            "start": 11393,
                            "end": 11402,
                            "loc": {
                              "start": {
                                "line": 253,
                                "column": 55
                              },
                              "end": {
                                "line": 253,
                                "column": 64
                              }
                            },
                            "name": "arguments"
                          }
                        ]
                      }
                    },
                    {
                      "type": "IfStatement",
                      "start": 11413,
                      "end": 11539,
                      "loc": {
                        "start": {
                          "line": 254,
                          "column": 8
                        },
                        "end": {
                          "line": 255,
                          "column": 73
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 11417,
                        "end": 11464,
                        "loc": {
                          "start": {
                            "line": 254,
                            "column": 12
                          },
                          "end": {
                            "line": 254,
                            "column": 59
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 11417,
                          "end": 11448,
                          "loc": {
                            "start": {
                              "line": 254,
                              "column": 12
                            },
                            "end": {
                              "line": 254,
                              "column": 43
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 11417,
                            "end": 11443,
                            "loc": {
                              "start": {
                                "line": 254,
                                "column": 12
                              },
                              "end": {
                                "line": 254,
                                "column": 38
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 11417,
                              "end": 11432,
                              "loc": {
                                "start": {
                                  "line": 254,
                                  "column": 12
                                },
                                "end": {
                                  "line": 254,
                                  "column": 27
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 11417,
                                "end": 11423,
                                "loc": {
                                  "start": {
                                    "line": 254,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 254,
                                    "column": 18
                                  }
                                },
                                "name": "member"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11424,
                                "end": 11432,
                                "loc": {
                                  "start": {
                                    "line": 254,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 254,
                                    "column": 27
                                  }
                                },
                                "name": "userData"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11433,
                              "end": 11443,
                              "loc": {
                                "start": {
                                  "line": 254,
                                  "column": 28
                                },
                                "end": {
                                  "line": 254,
                                  "column": 38
                                }
                              },
                              "name": "memberInfo"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11444,
                            "end": 11448,
                            "loc": {
                              "start": {
                                "line": 254,
                                "column": 39
                              },
                              "end": {
                                "line": 254,
                                "column": 43
                              }
                            },
                            "name": "type"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Literal",
                          "start": 11453,
                          "end": 11464,
                          "loc": {
                            "start": {
                              "line": 254,
                              "column": 48
                            },
                            "end": {
                              "line": 254,
                              "column": 59
                            }
                          },
                          "value": "objectMem",
                          "rawValue": "objectMem",
                          "raw": "'objectMem'"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 11478,
                        "end": 11539,
                        "loc": {
                          "start": {
                            "line": 255,
                            "column": 12
                          },
                          "end": {
                            "line": 255,
                            "column": 73
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 11478,
                          "end": 11538,
                          "loc": {
                            "start": {
                              "line": 255,
                              "column": 12
                            },
                            "end": {
                              "line": 255,
                              "column": 72
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 11478,
                            "end": 11494,
                            "loc": {
                              "start": {
                                "line": 255,
                                "column": 12
                              },
                              "end": {
                                "line": 255,
                                "column": 28
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 11478,
                              "end": 11482,
                              "loc": {
                                "start": {
                                  "line": 255,
                                  "column": 12
                                },
                                "end": {
                                  "line": 255,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11483,
                              "end": 11494,
                              "loc": {
                                "start": {
                                  "line": 255,
                                  "column": 17
                                },
                                "end": {
                                  "line": 255,
                                  "column": 28
                                }
                              },
                              "name": "addToSketch"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 11495,
                              "end": 11501,
                              "loc": {
                                "start": {
                                  "line": 255,
                                  "column": 29
                                },
                                "end": {
                                  "line": 255,
                                  "column": 35
                                }
                              },
                              "name": "member"
                            },
                            {
                              "type": "ObjectExpression",
                              "start": 11503,
                              "end": 11537,
                              "loc": {
                                "start": {
                                  "line": 255,
                                  "column": 37
                                },
                                "end": {
                                  "line": 255,
                                  "column": 71
                                }
                              },
                              "properties": [
                                {
                                  "type": "Property",
                                  "start": 11504,
                                  "end": 11519,
                                  "loc": {
                                    "start": {
                                      "line": 255,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 255,
                                      "column": 53
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 11504,
                                    "end": 11512,
                                    "loc": {
                                      "start": {
                                        "line": 255,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 255,
                                        "column": 46
                                      }
                                    },
                                    "name": "onServer"
                                  },
                                  "value": {
                                    "type": "Literal",
                                    "start": 11514,
                                    "end": 11519,
                                    "loc": {
                                      "start": {
                                        "line": 255,
                                        "column": 48
                                      },
                                      "end": {
                                        "line": 255,
                                        "column": 53
                                      }
                                    },
                                    "value": false,
                                    "rawValue": false,
                                    "raw": "false"
                                  },
                                  "kind": "init"
                                },
                                {
                                  "type": "Property",
                                  "start": 11521,
                                  "end": 11536,
                                  "loc": {
                                    "start": {
                                      "line": 255,
                                      "column": 55
                                    },
                                    "end": {
                                      "line": 255,
                                      "column": 70
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 11521,
                                    "end": 11529,
                                    "loc": {
                                      "start": {
                                        "line": 255,
                                        "column": 55
                                      },
                                      "end": {
                                        "line": 255,
                                        "column": 63
                                      }
                                    },
                                    "name": "onClient"
                                  },
                                  "value": {
                                    "type": "Literal",
                                    "start": 11531,
                                    "end": 11536,
                                    "loc": {
                                      "start": {
                                        "line": 255,
                                        "column": 65
                                      },
                                      "end": {
                                        "line": 255,
                                        "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": 11226,
                  "end": 11313,
                  "loc": {
                    "start": {
                      "line": 251,
                      "column": 4
                    },
                    "end": {
                      "line": 251,
                      "column": 91
                    }
                  },
                  "range": [
                    11226,
                    11313
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 11551,
              "end": 11781,
              "loc": {
                "start": {
                  "line": 258,
                  "column": 4
                },
                "end": {
                  "line": 262,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 11551,
                "end": 11575,
                "loc": {
                  "start": {
                    "line": 258,
                    "column": 4
                  },
                  "end": {
                    "line": 258,
                    "column": 28
                  }
                },
                "name": "removeSuperfluousMembers"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 11575,
                "end": 11781,
                "loc": {
                  "start": {
                    "line": 258,
                    "column": 28
                  },
                  "end": {
                    "line": 262,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 11578,
                  "end": 11781,
                  "loc": {
                    "start": {
                      "line": 258,
                      "column": 31
                    },
                    "end": {
                      "line": 262,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 11588,
                      "end": 11675,
                      "loc": {
                        "start": {
                          "line": 259,
                          "column": 8
                        },
                        "end": {
                          "line": 259,
                          "column": 95
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 11592,
                          "end": 11674,
                          "loc": {
                            "start": {
                              "line": 259,
                              "column": 12
                            },
                            "end": {
                              "line": 259,
                              "column": 94
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 11592,
                            "end": 11599,
                            "loc": {
                              "start": {
                                "line": 259,
                                "column": 12
                              },
                              "end": {
                                "line": 259,
                                "column": 19
                              }
                            },
                            "name": "members"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 11602,
                            "end": 11674,
                            "loc": {
                              "start": {
                                "line": 259,
                                "column": 22
                              },
                              "end": {
                                "line": 259,
                                "column": 94
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 11602,
                              "end": 11657,
                              "loc": {
                                "start": {
                                  "line": 259,
                                  "column": 22
                                },
                                "end": {
                                  "line": 259,
                                  "column": 77
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 11602,
                                "end": 11651,
                                "loc": {
                                  "start": {
                                    "line": 259,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 259,
                                    "column": 71
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 11602,
                                  "end": 11626,
                                  "loc": {
                                    "start": {
                                      "line": 259,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 259,
                                      "column": 46
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 11602,
                                    "end": 11616,
                                    "loc": {
                                      "start": {
                                        "line": 259,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 259,
                                        "column": 36
                                      }
                                    },
                                    "name": "ClassCadObject"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 11617,
                                    "end": 11626,
                                    "loc": {
                                      "start": {
                                        "line": 259,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 259,
                                        "column": 46
                                      }
                                    },
                                    "name": "prototype"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 11627,
                                  "end": 11651,
                                  "loc": {
                                    "start": {
                                      "line": 259,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 259,
                                      "column": 71
                                    }
                                  },
                                  "name": "removeSuperfluousMembers"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11652,
                                "end": 11657,
                                "loc": {
                                  "start": {
                                    "line": 259,
                                    "column": 72
                                  },
                                  "end": {
                                    "line": 259,
                                    "column": 77
                                  }
                                },
                                "name": "apply"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "ThisExpression",
                                "start": 11658,
                                "end": 11662,
                                "loc": {
                                  "start": {
                                    "line": 259,
                                    "column": 78
                                  },
                                  "end": {
                                    "line": 259,
                                    "column": 82
                                  }
                                }
                              },
                              {
                                "type": "Identifier",
                                "start": 11664,
                                "end": 11673,
                                "loc": {
                                  "start": {
                                    "line": 259,
                                    "column": 84
                                  },
                                  "end": {
                                    "line": 259,
                                    "column": 93
                                  }
                                },
                                "name": "arguments"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 11684,
                      "end": 11751,
                      "loc": {
                        "start": {
                          "line": 260,
                          "column": 8
                        },
                        "end": {
                          "line": 260,
                          "column": 75
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 11684,
                        "end": 11750,
                        "loc": {
                          "start": {
                            "line": 260,
                            "column": 8
                          },
                          "end": {
                            "line": 260,
                            "column": 74
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 11684,
                          "end": 11705,
                          "loc": {
                            "start": {
                              "line": 260,
                              "column": 8
                            },
                            "end": {
                              "line": 260,
                              "column": 29
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 11684,
                            "end": 11688,
                            "loc": {
                              "start": {
                                "line": 260,
                                "column": 8
                              },
                              "end": {
                                "line": 260,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11689,
                            "end": 11705,
                            "loc": {
                              "start": {
                                "line": 260,
                                "column": 13
                              },
                              "end": {
                                "line": 260,
                                "column": 29
                              }
                            },
                            "name": "removeFromSketch"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 11706,
                            "end": 11713,
                            "loc": {
                              "start": {
                                "line": 260,
                                "column": 30
                              },
                              "end": {
                                "line": 260,
                                "column": 37
                              }
                            },
                            "name": "members"
                          },
                          {
                            "type": "ObjectExpression",
                            "start": 11715,
                            "end": 11749,
                            "loc": {
                              "start": {
                                "line": 260,
                                "column": 39
                              },
                              "end": {
                                "line": 260,
                                "column": 73
                              }
                            },
                            "properties": [
                              {
                                "type": "Property",
                                "start": 11716,
                                "end": 11731,
                                "loc": {
                                  "start": {
                                    "line": 260,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 260,
                                    "column": 55
                                  }
                                },
                                "method": false,
                                "shorthand": false,
                                "computed": false,
                                "key": {
                                  "type": "Identifier",
                                  "start": 11716,
                                  "end": 11724,
                                  "loc": {
                                    "start": {
                                      "line": 260,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 260,
                                      "column": 48
                                    }
                                  },
                                  "name": "onServer"
                                },
                                "value": {
                                  "type": "Literal",
                                  "start": 11726,
                                  "end": 11731,
                                  "loc": {
                                    "start": {
                                      "line": 260,
                                      "column": 50
                                    },
                                    "end": {
                                      "line": 260,
                                      "column": 55
                                    }
                                  },
                                  "value": false,
                                  "rawValue": false,
                                  "raw": "false"
                                },
                                "kind": "init"
                              },
                              {
                                "type": "Property",
                                "start": 11733,
                                "end": 11748,
                                "loc": {
                                  "start": {
                                    "line": 260,
                                    "column": 57
                                  },
                                  "end": {
                                    "line": 260,
                                    "column": 72
                                  }
                                },
                                "method": false,
                                "shorthand": false,
                                "computed": false,
                                "key": {
                                  "type": "Identifier",
                                  "start": 11733,
                                  "end": 11741,
                                  "loc": {
                                    "start": {
                                      "line": 260,
                                      "column": 57
                                    },
                                    "end": {
                                      "line": 260,
                                      "column": 65
                                    }
                                  },
                                  "name": "onClient"
                                },
                                "value": {
                                  "type": "Literal",
                                  "start": 11743,
                                  "end": 11748,
                                  "loc": {
                                    "start": {
                                      "line": 260,
                                      "column": 67
                                    },
                                    "end": {
                                      "line": 260,
                                      "column": 72
                                    }
                                  },
                                  "value": false,
                                  "rawValue": false,
                                  "raw": "false"
                                },
                                "kind": "init"
                              }
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 11760,
                      "end": 11775,
                      "loc": {
                        "start": {
                          "line": 261,
                          "column": 8
                        },
                        "end": {
                          "line": 261,
                          "column": 23
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 11767,
                        "end": 11774,
                        "loc": {
                          "start": {
                            "line": 261,
                            "column": 15
                          },
                          "end": {
                            "line": 261,
                            "column": 22
                          }
                        },
                        "name": "members"
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 11787,
              "end": 11843,
              "loc": {
                "start": {
                  "line": 264,
                  "column": 4
                },
                "end": {
                  "line": 266,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 11787,
                "end": 11794,
                "loc": {
                  "start": {
                    "line": 264,
                    "column": 4
                  },
                  "end": {
                    "line": 264,
                    "column": 11
                  }
                },
                "name": "showBox"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 11794,
                "end": 11843,
                "loc": {
                  "start": {
                    "line": 264,
                    "column": 11
                  },
                  "end": {
                    "line": 266,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 11797,
                  "end": 11843,
                  "loc": {
                    "start": {
                      "line": 264,
                      "column": 14
                    },
                    "end": {
                      "line": 266,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 11807,
                      "end": 11837,
                      "loc": {
                        "start": {
                          "line": 265,
                          "column": 8
                        },
                        "end": {
                          "line": 265,
                          "column": 38
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 11807,
                        "end": 11836,
                        "loc": {
                          "start": {
                            "line": 265,
                            "column": 8
                          },
                          "end": {
                            "line": 265,
                            "column": 37
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 11807,
                          "end": 11824,
                          "loc": {
                            "start": {
                              "line": 265,
                              "column": 8
                            },
                            "end": {
                              "line": 265,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 11807,
                            "end": 11811,
                            "loc": {
                              "start": {
                                "line": 265,
                                "column": 8
                              },
                              "end": {
                                "line": 265,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11812,
                            "end": 11824,
                            "loc": {
                              "start": {
                                "line": 265,
                                "column": 13
                              },
                              "end": {
                                "line": 265,
                                "column": 25
                              }
                            },
                            "name": "addAuxObject"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 11825,
                            "end": 11835,
                            "loc": {
                              "start": {
                                "line": 265,
                                "column": 26
                              },
                              "end": {
                                "line": 265,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 11825,
                              "end": 11829,
                              "loc": {
                                "start": {
                                  "line": 265,
                                  "column": 26
                                },
                                "end": {
                                  "line": 265,
                                  "column": 30
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11830,
                              "end": 11835,
                              "loc": {
                                "start": {
                                  "line": 265,
                                  "column": 31
                                },
                                "end": {
                                  "line": 265,
                                  "column": 36
                                }
                              },
                              "name": "__box"
                            },
                            "computed": false
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 11849,
              "end": 11908,
              "loc": {
                "start": {
                  "line": 268,
                  "column": 4
                },
                "end": {
                  "line": 270,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 11849,
                "end": 11856,
                "loc": {
                  "start": {
                    "line": 268,
                    "column": 4
                  },
                  "end": {
                    "line": 268,
                    "column": 11
                  }
                },
                "name": "hideBox"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 11856,
                "end": 11908,
                "loc": {
                  "start": {
                    "line": 268,
                    "column": 11
                  },
                  "end": {
                    "line": 270,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 11859,
                  "end": 11908,
                  "loc": {
                    "start": {
                      "line": 268,
                      "column": 14
                    },
                    "end": {
                      "line": 270,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 11869,
                      "end": 11902,
                      "loc": {
                        "start": {
                          "line": 269,
                          "column": 8
                        },
                        "end": {
                          "line": 269,
                          "column": 41
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 11869,
                        "end": 11901,
                        "loc": {
                          "start": {
                            "line": 269,
                            "column": 8
                          },
                          "end": {
                            "line": 269,
                            "column": 40
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 11869,
                          "end": 11889,
                          "loc": {
                            "start": {
                              "line": 269,
                              "column": 8
                            },
                            "end": {
                              "line": 269,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 11869,
                            "end": 11873,
                            "loc": {
                              "start": {
                                "line": 269,
                                "column": 8
                              },
                              "end": {
                                "line": 269,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11874,
                            "end": 11889,
                            "loc": {
                              "start": {
                                "line": 269,
                                "column": 13
                              },
                              "end": {
                                "line": 269,
                                "column": 28
                              }
                            },
                            "name": "removeAuxObject"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 11890,
                            "end": 11900,
                            "loc": {
                              "start": {
                                "line": 269,
                                "column": 29
                              },
                              "end": {
                                "line": 269,
                                "column": 39
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 11890,
                              "end": 11894,
                              "loc": {
                                "start": {
                                  "line": 269,
                                  "column": 29
                                },
                                "end": {
                                  "line": 269,
                                  "column": 33
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11895,
                              "end": 11900,
                              "loc": {
                                "start": {
                                  "line": 269,
                                  "column": 34
                                },
                                "end": {
                                  "line": 269,
                                  "column": 39
                                }
                              },
                              "name": "__box"
                            },
                            "computed": false
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 11914,
              "end": 13085,
              "loc": {
                "start": {
                  "line": 272,
                  "column": 4
                },
                "end": {
                  "line": 305,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 11914,
                "end": 11923,
                "loc": {
                  "start": {
                    "line": 272,
                    "column": 4
                  },
                  "end": {
                    "line": 272,
                    "column": 13
                  }
                },
                "name": "updateBox"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 11923,
                "end": 13085,
                "loc": {
                  "start": {
                    "line": 272,
                    "column": 13
                  },
                  "end": {
                    "line": 305,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 11926,
                  "end": 13085,
                  "loc": {
                    "start": {
                      "line": 272,
                      "column": 16
                    },
                    "end": {
                      "line": 305,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 11936,
                      "end": 11961,
                      "loc": {
                        "start": {
                          "line": 273,
                          "column": 8
                        },
                        "end": {
                          "line": 273,
                          "column": 33
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 11936,
                        "end": 11960,
                        "loc": {
                          "start": {
                            "line": 273,
                            "column": 8
                          },
                          "end": {
                            "line": 273,
                            "column": 32
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 11936,
                          "end": 11958,
                          "loc": {
                            "start": {
                              "line": 273,
                              "column": 8
                            },
                            "end": {
                              "line": 273,
                              "column": 30
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 11936,
                            "end": 11940,
                            "loc": {
                              "start": {
                                "line": 273,
                                "column": 8
                              },
                              "end": {
                                "line": 273,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11941,
                            "end": 11958,
                            "loc": {
                              "start": {
                                "line": 273,
                                "column": 13
                              },
                              "end": {
                                "line": 273,
                                "column": 30
                              }
                            },
                            "name": "updateMatrixWorld"
                          },
                          "computed": false
                        },
                        "arguments": []
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " bbox is bounding box in local to sketch coordinates",
                          "start": 11970,
                          "end": 12024,
                          "loc": {
                            "start": {
                              "line": 274,
                              "column": 8
                            },
                            "end": {
                              "line": 274,
                              "column": 62
                            }
                          },
                          "range": [
                            11970,
                            12024
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 12033,
                      "end": 12061,
                      "loc": {
                        "start": {
                          "line": 275,
                          "column": 8
                        },
                        "end": {
                          "line": 275,
                          "column": 36
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 12037,
                          "end": 12060,
                          "loc": {
                            "start": {
                              "line": 275,
                              "column": 12
                            },
                            "end": {
                              "line": 275,
                              "column": 35
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 12037,
                            "end": 12041,
                            "loc": {
                              "start": {
                                "line": 275,
                                "column": 12
                              },
                              "end": {
                                "line": 275,
                                "column": 16
                              }
                            },
                            "name": "bbox",
                            "leadingComments": null
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 12044,
                            "end": 12060,
                            "loc": {
                              "start": {
                                "line": 275,
                                "column": 19
                              },
                              "end": {
                                "line": 275,
                                "column": 35
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 12048,
                              "end": 12058,
                              "loc": {
                                "start": {
                                  "line": 275,
                                  "column": 23
                                },
                                "end": {
                                  "line": 275,
                                  "column": 33
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 12048,
                                "end": 12053,
                                "loc": {
                                  "start": {
                                    "line": 275,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 275,
                                    "column": 28
                                  }
                                },
                                "name": "THREE"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12054,
                                "end": 12058,
                                "loc": {
                                  "start": {
                                    "line": 275,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 275,
                                    "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": 11970,
                          "end": 12024,
                          "loc": {
                            "start": {
                              "line": 274,
                              "column": 8
                            },
                            "end": {
                              "line": 274,
                              "column": 62
                            }
                          },
                          "range": [
                            11970,
                            12024
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 12070,
                      "end": 12099,
                      "loc": {
                        "start": {
                          "line": 276,
                          "column": 8
                        },
                        "end": {
                          "line": 276,
                          "column": 37
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 12074,
                          "end": 12098,
                          "loc": {
                            "start": {
                              "line": 276,
                              "column": 12
                            },
                            "end": {
                              "line": 276,
                              "column": 36
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 12074,
                            "end": 12076,
                            "loc": {
                              "start": {
                                "line": 276,
                                "column": 12
                              },
                              "end": {
                                "line": 276,
                                "column": 14
                              }
                            },
                            "name": "v1"
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 12079,
                            "end": 12098,
                            "loc": {
                              "start": {
                                "line": 276,
                                "column": 17
                              },
                              "end": {
                                "line": 276,
                                "column": 36
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 12083,
                              "end": 12096,
                              "loc": {
                                "start": {
                                  "line": 276,
                                  "column": 21
                                },
                                "end": {
                                  "line": 276,
                                  "column": 34
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 12083,
                                "end": 12088,
                                "loc": {
                                  "start": {
                                    "line": 276,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 276,
                                    "column": 26
                                  }
                                },
                                "name": "THREE"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12089,
                                "end": 12096,
                                "loc": {
                                  "start": {
                                    "line": 276,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 276,
                                    "column": 34
                                  }
                                },
                                "name": "Vector3"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 12108,
                      "end": 12583,
                      "loc": {
                        "start": {
                          "line": 277,
                          "column": 8
                        },
                        "end": {
                          "line": 287,
                          "column": 12
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 12108,
                        "end": 12582,
                        "loc": {
                          "start": {
                            "line": 277,
                            "column": 8
                          },
                          "end": {
                            "line": 287,
                            "column": 11
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 12108,
                          "end": 12141,
                          "loc": {
                            "start": {
                              "line": 277,
                              "column": 8
                            },
                            "end": {
                              "line": 277,
                              "column": 41
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 12108,
                            "end": 12133,
                            "loc": {
                              "start": {
                                "line": 277,
                                "column": 8
                              },
                              "end": {
                                "line": 277,
                                "column": 33
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 12108,
                              "end": 12131,
                              "loc": {
                                "start": {
                                  "line": 277,
                                  "column": 8
                                },
                                "end": {
                                  "line": 277,
                                  "column": 31
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 12108,
                                "end": 12112,
                                "loc": {
                                  "start": {
                                    "line": 277,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 277,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12113,
                                "end": 12131,
                                "loc": {
                                  "start": {
                                    "line": 277,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 277,
                                    "column": 31
                                  }
                                },
                                "name": "getObjectsOnSketch"
                              },
                              "computed": false
                            },
                            "arguments": []
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12134,
                            "end": 12141,
                            "loc": {
                              "start": {
                                "line": 277,
                                "column": 34
                              },
                              "end": {
                                "line": 277,
                                "column": 41
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 12142,
                            "end": 12581,
                            "loc": {
                              "start": {
                                "line": 277,
                                "column": 42
                              },
                              "end": {
                                "line": 287,
                                "column": 10
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": true,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 12142,
                                "end": 12145,
                                "loc": {
                                  "start": {
                                    "line": 277,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 277,
                                    "column": 45
                                  }
                                },
                                "name": "obj"
                              }
                            ],
                            "body": {
                              "type": "CallExpression",
                              "start": 12149,
                              "end": 12581,
                              "loc": {
                                "start": {
                                  "line": 277,
                                  "column": 49
                                },
                                "end": {
                                  "line": 287,
                                  "column": 10
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 12149,
                                "end": 12168,
                                "loc": {
                                  "start": {
                                    "line": 277,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 277,
                                    "column": 68
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 12149,
                                  "end": 12152,
                                  "loc": {
                                    "start": {
                                      "line": 277,
                                      "column": 49
                                    },
                                    "end": {
                                      "line": 277,
                                      "column": 52
                                    }
                                  },
                                  "name": "obj"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 12153,
                                  "end": 12168,
                                  "loc": {
                                    "start": {
                                      "line": 277,
                                      "column": 53
                                    },
                                    "end": {
                                      "line": 277,
                                      "column": 68
                                    }
                                  },
                                  "name": "traverseVisible"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ArrowFunctionExpression",
                                  "start": 12169,
                                  "end": 12580,
                                  "loc": {
                                    "start": {
                                      "line": 277,
                                      "column": 69
                                    },
                                    "end": {
                                      "line": 287,
                                      "column": 9
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": false,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 12169,
                                      "end": 12173,
                                      "loc": {
                                        "start": {
                                          "line": 277,
                                          "column": 69
                                        },
                                        "end": {
                                          "line": 277,
                                          "column": 73
                                        }
                                      },
                                      "name": "node"
                                    }
                                  ],
                                  "body": {
                                    "type": "BlockStatement",
                                    "start": 12177,
                                    "end": 12580,
                                    "loc": {
                                      "start": {
                                        "line": 277,
                                        "column": 77
                                      },
                                      "end": {
                                        "line": 287,
                                        "column": 9
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "IfStatement",
                                        "start": 12191,
                                        "end": 12262,
                                        "loc": {
                                          "start": {
                                            "line": 278,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 279,
                                            "column": 23
                                          }
                                        },
                                        "test": {
                                          "type": "UnaryExpression",
                                          "start": 12195,
                                          "end": 12237,
                                          "loc": {
                                            "start": {
                                              "line": 278,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 278,
                                              "column": 58
                                            }
                                          },
                                          "operator": "!",
                                          "prefix": true,
                                          "argument": {
                                            "type": "BinaryExpression",
                                            "start": 12197,
                                            "end": 12236,
                                            "loc": {
                                              "start": {
                                                "line": 278,
                                                "column": 18
                                              },
                                              "end": {
                                                "line": 278,
                                                "column": 57
                                              }
                                            },
                                            "left": {
                                              "type": "MemberExpression",
                                              "start": 12197,
                                              "end": 12210,
                                              "loc": {
                                                "start": {
                                                  "line": 278,
                                                  "column": 18
                                                },
                                                "end": {
                                                  "line": 278,
                                                  "column": 31
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 12197,
                                                "end": 12201,
                                                "loc": {
                                                  "start": {
                                                    "line": 278,
                                                    "column": 18
                                                  },
                                                  "end": {
                                                    "line": 278,
                                                    "column": 22
                                                  }
                                                },
                                                "name": "node"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 12202,
                                                "end": 12210,
                                                "loc": {
                                                  "start": {
                                                    "line": 278,
                                                    "column": 23
                                                  },
                                                  "end": {
                                                    "line": 278,
                                                    "column": 31
                                                  }
                                                },
                                                "name": "geometry"
                                              },
                                              "computed": false
                                            },
                                            "operator": "instanceof",
                                            "right": {
                                              "type": "MemberExpression",
                                              "start": 12222,
                                              "end": 12236,
                                              "loc": {
                                                "start": {
                                                  "line": 278,
                                                  "column": 43
                                                },
                                                "end": {
                                                  "line": 278,
                                                  "column": 57
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 12222,
                                                "end": 12227,
                                                "loc": {
                                                  "start": {
                                                    "line": 278,
                                                    "column": 43
                                                  },
                                                  "end": {
                                                    "line": 278,
                                                    "column": 48
                                                  }
                                                },
                                                "name": "THREE"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 12228,
                                                "end": 12236,
                                                "loc": {
                                                  "start": {
                                                    "line": 278,
                                                    "column": 49
                                                  },
                                                  "end": {
                                                    "line": 278,
                                                    "column": 57
                                                  }
                                                },
                                                "name": "Geometry"
                                              },
                                              "computed": false
                                            },
                                            "parenthesizedExpression": true
                                          }
                                        },
                                        "consequent": {
                                          "type": "ReturnStatement",
                                          "start": 12255,
                                          "end": 12262,
                                          "loc": {
                                            "start": {
                                              "line": 279,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 279,
                                              "column": 23
                                            }
                                          },
                                          "argument": null
                                        },
                                        "alternate": null
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 12275,
                                        "end": 12570,
                                        "loc": {
                                          "start": {
                                            "line": 280,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 286,
                                            "column": 15
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 12275,
                                          "end": 12569,
                                          "loc": {
                                            "start": {
                                              "line": 280,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 286,
                                              "column": 14
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 12275,
                                            "end": 12305,
                                            "loc": {
                                              "start": {
                                                "line": 280,
                                                "column": 12
                                              },
                                              "end": {
                                                "line": 280,
                                                "column": 42
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 12275,
                                              "end": 12297,
                                              "loc": {
                                                "start": {
                                                  "line": 280,
                                                  "column": 12
                                                },
                                                "end": {
                                                  "line": 280,
                                                  "column": 34
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 12275,
                                                "end": 12288,
                                                "loc": {
                                                  "start": {
                                                    "line": 280,
                                                    "column": 12
                                                  },
                                                  "end": {
                                                    "line": 280,
                                                    "column": 25
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 12275,
                                                  "end": 12279,
                                                  "loc": {
                                                    "start": {
                                                      "line": 280,
                                                      "column": 12
                                                    },
                                                    "end": {
                                                      "line": 280,
                                                      "column": 16
                                                    }
                                                  },
                                                  "name": "node"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 12280,
                                                  "end": 12288,
                                                  "loc": {
                                                    "start": {
                                                      "line": 280,
                                                      "column": 17
                                                    },
                                                    "end": {
                                                      "line": 280,
                                                      "column": 25
                                                    }
                                                  },
                                                  "name": "geometry"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 12289,
                                                "end": 12297,
                                                "loc": {
                                                  "start": {
                                                    "line": 280,
                                                    "column": 26
                                                  },
                                                  "end": {
                                                    "line": 280,
                                                    "column": 34
                                                  }
                                                },
                                                "name": "vertices"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 12298,
                                              "end": 12305,
                                              "loc": {
                                                "start": {
                                                  "line": 280,
                                                  "column": 35
                                                },
                                                "end": {
                                                  "line": 280,
                                                  "column": 42
                                                }
                                              },
                                              "name": "forEach"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "ArrowFunctionExpression",
                                              "start": 12306,
                                              "end": 12568,
                                              "loc": {
                                                "start": {
                                                  "line": 280,
                                                  "column": 43
                                                },
                                                "end": {
                                                  "line": 286,
                                                  "column": 13
                                                }
                                              },
                                              "id": null,
                                              "generator": false,
                                              "expression": false,
                                              "async": false,
                                              "params": [
                                                {
                                                  "type": "Identifier",
                                                  "start": 12306,
                                                  "end": 12312,
                                                  "loc": {
                                                    "start": {
                                                      "line": 280,
                                                      "column": 43
                                                    },
                                                    "end": {
                                                      "line": 280,
                                                      "column": 49
                                                    }
                                                  },
                                                  "name": "vertex"
                                                }
                                              ],
                                              "body": {
                                                "type": "BlockStatement",
                                                "start": 12316,
                                                "end": 12568,
                                                "loc": {
                                                  "start": {
                                                    "line": 280,
                                                    "column": 53
                                                  },
                                                  "end": {
                                                    "line": 286,
                                                    "column": 13
                                                  }
                                                },
                                                "body": [
                                                  {
                                                    "type": "ExpressionStatement",
                                                    "start": 12420,
                                                    "end": 12436,
                                                    "loc": {
                                                      "start": {
                                                        "line": 282,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 282,
                                                        "column": 32
                                                      }
                                                    },
                                                    "expression": {
                                                      "type": "CallExpression",
                                                      "start": 12420,
                                                      "end": 12435,
                                                      "loc": {
                                                        "start": {
                                                          "line": 282,
                                                          "column": 16
                                                        },
                                                        "end": {
                                                          "line": 282,
                                                          "column": 31
                                                        }
                                                      },
                                                      "callee": {
                                                        "type": "MemberExpression",
                                                        "start": 12420,
                                                        "end": 12427,
                                                        "loc": {
                                                          "start": {
                                                            "line": 282,
                                                            "column": 16
                                                          },
                                                          "end": {
                                                            "line": 282,
                                                            "column": 23
                                                          }
                                                        },
                                                        "object": {
                                                          "type": "Identifier",
                                                          "start": 12420,
                                                          "end": 12422,
                                                          "loc": {
                                                            "start": {
                                                              "line": 282,
                                                              "column": 16
                                                            },
                                                            "end": {
                                                              "line": 282,
                                                              "column": 18
                                                            }
                                                          },
                                                          "name": "v1",
                                                          "leadingComments": null
                                                        },
                                                        "property": {
                                                          "type": "Identifier",
                                                          "start": 12423,
                                                          "end": 12427,
                                                          "loc": {
                                                            "start": {
                                                              "line": 282,
                                                              "column": 19
                                                            },
                                                            "end": {
                                                              "line": 282,
                                                              "column": 23
                                                            }
                                                          },
                                                          "name": "copy"
                                                        },
                                                        "computed": false,
                                                        "leadingComments": null
                                                      },
                                                      "arguments": [
                                                        {
                                                          "type": "Identifier",
                                                          "start": 12428,
                                                          "end": 12434,
                                                          "loc": {
                                                            "start": {
                                                              "line": 282,
                                                              "column": 24
                                                            },
                                                            "end": {
                                                              "line": 282,
                                                              "column": 30
                                                            }
                                                          },
                                                          "name": "vertex"
                                                        }
                                                      ],
                                                      "leadingComments": null
                                                    },
                                                    "leadingComments": [
                                                      {
                                                        "type": "CommentLine",
                                                        "value": " translate vertex coordinates from local-to-node to local-to-sketch",
                                                        "start": 12334,
                                                        "end": 12403,
                                                        "loc": {
                                                          "start": {
                                                            "line": 281,
                                                            "column": 16
                                                          },
                                                          "end": {
                                                            "line": 281,
                                                            "column": 85
                                                          }
                                                        },
                                                        "range": [
                                                          12334,
                                                          12403
                                                        ]
                                                      }
                                                    ]
                                                  },
                                                  {
                                                    "type": "ExpressionStatement",
                                                    "start": 12453,
                                                    "end": 12475,
                                                    "loc": {
                                                      "start": {
                                                        "line": 283,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 283,
                                                        "column": 38
                                                      }
                                                    },
                                                    "expression": {
                                                      "type": "CallExpression",
                                                      "start": 12453,
                                                      "end": 12474,
                                                      "loc": {
                                                        "start": {
                                                          "line": 283,
                                                          "column": 16
                                                        },
                                                        "end": {
                                                          "line": 283,
                                                          "column": 37
                                                        }
                                                      },
                                                      "callee": {
                                                        "type": "MemberExpression",
                                                        "start": 12453,
                                                        "end": 12470,
                                                        "loc": {
                                                          "start": {
                                                            "line": 283,
                                                            "column": 16
                                                          },
                                                          "end": {
                                                            "line": 283,
                                                            "column": 33
                                                          }
                                                        },
                                                        "object": {
                                                          "type": "Identifier",
                                                          "start": 12453,
                                                          "end": 12457,
                                                          "loc": {
                                                            "start": {
                                                              "line": 283,
                                                              "column": 16
                                                            },
                                                            "end": {
                                                              "line": 283,
                                                              "column": 20
                                                            }
                                                          },
                                                          "name": "node"
                                                        },
                                                        "property": {
                                                          "type": "Identifier",
                                                          "start": 12458,
                                                          "end": 12470,
                                                          "loc": {
                                                            "start": {
                                                              "line": 283,
                                                              "column": 21
                                                            },
                                                            "end": {
                                                              "line": 283,
                                                              "column": 33
                                                            }
                                                          },
                                                          "name": "localToWorld"
                                                        },
                                                        "computed": false
                                                      },
                                                      "arguments": [
                                                        {
                                                          "type": "Identifier",
                                                          "start": 12471,
                                                          "end": 12473,
                                                          "loc": {
                                                            "start": {
                                                              "line": 283,
                                                              "column": 34
                                                            },
                                                            "end": {
                                                              "line": 283,
                                                              "column": 36
                                                            }
                                                          },
                                                          "name": "v1"
                                                        }
                                                      ]
                                                    }
                                                  },
                                                  {
                                                    "type": "ExpressionStatement",
                                                    "start": 12492,
                                                    "end": 12514,
                                                    "loc": {
                                                      "start": {
                                                        "line": 284,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 284,
                                                        "column": 38
                                                      }
                                                    },
                                                    "expression": {
                                                      "type": "CallExpression",
                                                      "start": 12492,
                                                      "end": 12513,
                                                      "loc": {
                                                        "start": {
                                                          "line": 284,
                                                          "column": 16
                                                        },
                                                        "end": {
                                                          "line": 284,
                                                          "column": 37
                                                        }
                                                      },
                                                      "callee": {
                                                        "type": "MemberExpression",
                                                        "start": 12492,
                                                        "end": 12509,
                                                        "loc": {
                                                          "start": {
                                                            "line": 284,
                                                            "column": 16
                                                          },
                                                          "end": {
                                                            "line": 284,
                                                            "column": 33
                                                          }
                                                        },
                                                        "object": {
                                                          "type": "ThisExpression",
                                                          "start": 12492,
                                                          "end": 12496,
                                                          "loc": {
                                                            "start": {
                                                              "line": 284,
                                                              "column": 16
                                                            },
                                                            "end": {
                                                              "line": 284,
                                                              "column": 20
                                                            }
                                                          }
                                                        },
                                                        "property": {
                                                          "type": "Identifier",
                                                          "start": 12497,
                                                          "end": 12509,
                                                          "loc": {
                                                            "start": {
                                                              "line": 284,
                                                              "column": 21
                                                            },
                                                            "end": {
                                                              "line": 284,
                                                              "column": 33
                                                            }
                                                          },
                                                          "name": "worldToLocal"
                                                        },
                                                        "computed": false
                                                      },
                                                      "arguments": [
                                                        {
                                                          "type": "Identifier",
                                                          "start": 12510,
                                                          "end": 12512,
                                                          "loc": {
                                                            "start": {
                                                              "line": 284,
                                                              "column": 34
                                                            },
                                                            "end": {
                                                              "line": 284,
                                                              "column": 36
                                                            }
                                                          },
                                                          "name": "v1"
                                                        }
                                                      ]
                                                    }
                                                  },
                                                  {
                                                    "type": "ExpressionStatement",
                                                    "start": 12531,
                                                    "end": 12554,
                                                    "loc": {
                                                      "start": {
                                                        "line": 285,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 285,
                                                        "column": 39
                                                      }
                                                    },
                                                    "expression": {
                                                      "type": "CallExpression",
                                                      "start": 12531,
                                                      "end": 12553,
                                                      "loc": {
                                                        "start": {
                                                          "line": 285,
                                                          "column": 16
                                                        },
                                                        "end": {
                                                          "line": 285,
                                                          "column": 38
                                                        }
                                                      },
                                                      "callee": {
                                                        "type": "MemberExpression",
                                                        "start": 12531,
                                                        "end": 12549,
                                                        "loc": {
                                                          "start": {
                                                            "line": 285,
                                                            "column": 16
                                                          },
                                                          "end": {
                                                            "line": 285,
                                                            "column": 34
                                                          }
                                                        },
                                                        "object": {
                                                          "type": "Identifier",
                                                          "start": 12531,
                                                          "end": 12535,
                                                          "loc": {
                                                            "start": {
                                                              "line": 285,
                                                              "column": 16
                                                            },
                                                            "end": {
                                                              "line": 285,
                                                              "column": 20
                                                            }
                                                          },
                                                          "name": "bbox"
                                                        },
                                                        "property": {
                                                          "type": "Identifier",
                                                          "start": 12536,
                                                          "end": 12549,
                                                          "loc": {
                                                            "start": {
                                                              "line": 285,
                                                              "column": 21
                                                            },
                                                            "end": {
                                                              "line": 285,
                                                              "column": 34
                                                            }
                                                          },
                                                          "name": "expandByPoint"
                                                        },
                                                        "computed": false
                                                      },
                                                      "arguments": [
                                                        {
                                                          "type": "Identifier",
                                                          "start": 12550,
                                                          "end": 12552,
                                                          "loc": {
                                                            "start": {
                                                              "line": 285,
                                                              "column": 35
                                                            },
                                                            "end": {
                                                              "line": 285,
                                                              "column": 37
                                                            }
                                                          },
                                                          "name": "v1"
                                                        }
                                                      ]
                                                    }
                                                  }
                                                ]
                                              }
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  }
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 12593,
                      "end": 12618,
                      "loc": {
                        "start": {
                          "line": 289,
                          "column": 8
                        },
                        "end": {
                          "line": 289,
                          "column": 33
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 12597,
                          "end": 12617,
                          "loc": {
                            "start": {
                              "line": 289,
                              "column": 12
                            },
                            "end": {
                              "line": 289,
                              "column": 32
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 12597,
                            "end": 12604,
                            "loc": {
                              "start": {
                                "line": 289,
                                "column": 12
                              },
                              "end": {
                                "line": 289,
                                "column": 19
                              }
                            },
                            "name": "thisBox"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 12607,
                            "end": 12617,
                            "loc": {
                              "start": {
                                "line": 289,
                                "column": 22
                              },
                              "end": {
                                "line": 289,
                                "column": 32
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 12607,
                              "end": 12611,
                              "loc": {
                                "start": {
                                  "line": 289,
                                  "column": 22
                                },
                                "end": {
                                  "line": 289,
                                  "column": 26
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 12612,
                              "end": 12617,
                              "loc": {
                                "start": {
                                  "line": 289,
                                  "column": 27
                                },
                                "end": {
                                  "line": 289,
                                  "column": 32
                                }
                              },
                              "name": "__box"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 12627,
                      "end": 12668,
                      "loc": {
                        "start": {
                          "line": 290,
                          "column": 8
                        },
                        "end": {
                          "line": 290,
                          "column": 49
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 12627,
                        "end": 12667,
                        "loc": {
                          "start": {
                            "line": 290,
                            "column": 8
                          },
                          "end": {
                            "line": 290,
                            "column": 48
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 12627,
                          "end": 12643,
                          "loc": {
                            "start": {
                              "line": 290,
                              "column": 8
                            },
                            "end": {
                              "line": 290,
                              "column": 24
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 12627,
                            "end": 12634,
                            "loc": {
                              "start": {
                                "line": 290,
                                "column": 8
                              },
                              "end": {
                                "line": 290,
                                "column": 15
                              }
                            },
                            "name": "thisBox"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12635,
                            "end": 12643,
                            "loc": {
                              "start": {
                                "line": 290,
                                "column": 16
                              },
                              "end": {
                                "line": 290,
                                "column": 24
                              }
                            },
                            "name": "material"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 12646,
                          "end": 12667,
                          "loc": {
                            "start": {
                              "line": 290,
                              "column": 27
                            },
                            "end": {
                              "line": 290,
                              "column": 48
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 12646,
                            "end": 12650,
                            "loc": {
                              "start": {
                                "line": 290,
                                "column": 27
                              },
                              "end": {
                                "line": 290,
                                "column": 31
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12651,
                            "end": 12667,
                            "loc": {
                              "start": {
                                "line": 290,
                                "column": 32
                              },
                              "end": {
                                "line": 290,
                                "column": 48
                              }
                            },
                            "name": "frameBoxMaterial"
                          },
                          "computed": false
                        }
                      }
                    },
                    {
                      "type": "IfStatement",
                      "start": 12678,
                      "end": 13079,
                      "loc": {
                        "start": {
                          "line": 292,
                          "column": 8
                        },
                        "end": {
                          "line": 304,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "CallExpression",
                        "start": 12682,
                        "end": 12696,
                        "loc": {
                          "start": {
                            "line": 292,
                            "column": 12
                          },
                          "end": {
                            "line": 292,
                            "column": 26
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 12682,
                          "end": 12694,
                          "loc": {
                            "start": {
                              "line": 292,
                              "column": 12
                            },
                            "end": {
                              "line": 292,
                              "column": 24
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 12682,
                            "end": 12686,
                            "loc": {
                              "start": {
                                "line": 292,
                                "column": 12
                              },
                              "end": {
                                "line": 292,
                                "column": 16
                              }
                            },
                            "name": "bbox"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12687,
                            "end": 12694,
                            "loc": {
                              "start": {
                                "line": 292,
                                "column": 17
                              },
                              "end": {
                                "line": 292,
                                "column": 24
                              }
                            },
                            "name": "isEmpty"
                          },
                          "computed": false
                        },
                        "arguments": []
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 12698,
                        "end": 12836,
                        "loc": {
                          "start": {
                            "line": 292,
                            "column": 28
                          },
                          "end": {
                            "line": 296,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 12747,
                            "end": 12783,
                            "loc": {
                              "start": {
                                "line": 294,
                                "column": 12
                              },
                              "end": {
                                "line": 294,
                                "column": 48
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 12747,
                              "end": 12782,
                              "loc": {
                                "start": {
                                  "line": 294,
                                  "column": 12
                                },
                                "end": {
                                  "line": 294,
                                  "column": 47
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 12747,
                                "end": 12764,
                                "loc": {
                                  "start": {
                                    "line": 294,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 294,
                                    "column": 29
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 12747,
                                  "end": 12760,
                                  "loc": {
                                    "start": {
                                      "line": 294,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 294,
                                      "column": 25
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 12747,
                                    "end": 12754,
                                    "loc": {
                                      "start": {
                                        "line": 294,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 294,
                                        "column": 19
                                      }
                                    },
                                    "name": "thisBox",
                                    "leadingComments": null
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 12755,
                                    "end": 12760,
                                    "loc": {
                                      "start": {
                                        "line": 294,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 294,
                                        "column": 25
                                      }
                                    },
                                    "name": "scale"
                                  },
                                  "computed": false,
                                  "leadingComments": null
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 12761,
                                  "end": 12764,
                                  "loc": {
                                    "start": {
                                      "line": 294,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 294,
                                      "column": 29
                                    }
                                  },
                                  "name": "set"
                                },
                                "computed": false,
                                "leadingComments": null
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 12765,
                                  "end": 12769,
                                  "loc": {
                                    "start": {
                                      "line": 294,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 294,
                                      "column": 34
                                    }
                                  },
                                  "value": 0.001,
                                  "rawValue": 0.001,
                                  "raw": "1e-3"
                                },
                                {
                                  "type": "Literal",
                                  "start": 12771,
                                  "end": 12775,
                                  "loc": {
                                    "start": {
                                      "line": 294,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 294,
                                      "column": 40
                                    }
                                  },
                                  "value": 0.001,
                                  "rawValue": 0.001,
                                  "raw": "1e-3"
                                },
                                {
                                  "type": "Literal",
                                  "start": 12777,
                                  "end": 12781,
                                  "loc": {
                                    "start": {
                                      "line": 294,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 294,
                                      "column": 46
                                    }
                                  },
                                  "value": 0.001,
                                  "rawValue": 0.001,
                                  "raw": "1e-3"
                                }
                              ],
                              "leadingComments": null
                            },
                            "leadingComments": [
                              {
                                "type": "CommentLine",
                                "value": " (nothing on sketch)",
                                "start": 12712,
                                "end": 12734,
                                "loc": {
                                  "start": {
                                    "line": 293,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 293,
                                    "column": 34
                                  }
                                },
                                "range": [
                                  12712,
                                  12734
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 12796,
                            "end": 12826,
                            "loc": {
                              "start": {
                                "line": 295,
                                "column": 12
                              },
                              "end": {
                                "line": 295,
                                "column": 42
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 12796,
                              "end": 12825,
                              "loc": {
                                "start": {
                                  "line": 295,
                                  "column": 12
                                },
                                "end": {
                                  "line": 295,
                                  "column": 41
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 12796,
                                "end": 12816,
                                "loc": {
                                  "start": {
                                    "line": 295,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 295,
                                    "column": 32
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 12796,
                                  "end": 12812,
                                  "loc": {
                                    "start": {
                                      "line": 295,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 295,
                                      "column": 28
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 12796,
                                    "end": 12803,
                                    "loc": {
                                      "start": {
                                        "line": 295,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 295,
                                        "column": 19
                                      }
                                    },
                                    "name": "thisBox"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 12804,
                                    "end": 12812,
                                    "loc": {
                                      "start": {
                                        "line": 295,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 295,
                                        "column": 28
                                      }
                                    },
                                    "name": "position"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 12813,
                                  "end": 12816,
                                  "loc": {
                                    "start": {
                                      "line": 295,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 295,
                                      "column": 32
                                    }
                                  },
                                  "name": "set"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 12817,
                                  "end": 12818,
                                  "loc": {
                                    "start": {
                                      "line": 295,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 295,
                                      "column": 34
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Literal",
                                  "start": 12820,
                                  "end": 12821,
                                  "loc": {
                                    "start": {
                                      "line": 295,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 295,
                                      "column": 37
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Literal",
                                  "start": 12823,
                                  "end": 12824,
                                  "loc": {
                                    "start": {
                                      "line": 295,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 295,
                                      "column": 40
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          }
                        ]
                      },
                      "alternate": {
                        "type": "BlockStatement",
                        "start": 12850,
                        "end": 13079,
                        "loc": {
                          "start": {
                            "line": 297,
                            "column": 13
                          },
                          "end": {
                            "line": 304,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 12892,
                            "end": 12911,
                            "loc": {
                              "start": {
                                "line": 299,
                                "column": 12
                              },
                              "end": {
                                "line": 299,
                                "column": 31
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 12892,
                              "end": 12910,
                              "loc": {
                                "start": {
                                  "line": 299,
                                  "column": 12
                                },
                                "end": {
                                  "line": 299,
                                  "column": 30
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 12892,
                                "end": 12902,
                                "loc": {
                                  "start": {
                                    "line": 299,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 299,
                                    "column": 22
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 12892,
                                  "end": 12900,
                                  "loc": {
                                    "start": {
                                      "line": 299,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 299,
                                      "column": 20
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 12892,
                                    "end": 12896,
                                    "loc": {
                                      "start": {
                                        "line": 299,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 299,
                                        "column": 16
                                      }
                                    },
                                    "name": "bbox",
                                    "leadingComments": null
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 12897,
                                    "end": 12900,
                                    "loc": {
                                      "start": {
                                        "line": 299,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 299,
                                        "column": 20
                                      }
                                    },
                                    "name": "min"
                                  },
                                  "computed": false,
                                  "leadingComments": null
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 12901,
                                  "end": 12902,
                                  "loc": {
                                    "start": {
                                      "line": 299,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 299,
                                      "column": 22
                                    }
                                  },
                                  "name": "z"
                                },
                                "computed": false,
                                "leadingComments": null
                              },
                              "right": {
                                "type": "UnaryExpression",
                                "start": 12905,
                                "end": 12910,
                                "loc": {
                                  "start": {
                                    "line": 299,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 299,
                                    "column": 30
                                  }
                                },
                                "operator": "-",
                                "prefix": true,
                                "argument": {
                                  "type": "Literal",
                                  "start": 12906,
                                  "end": 12910,
                                  "loc": {
                                    "start": {
                                      "line": 299,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 299,
                                      "column": 30
                                    }
                                  },
                                  "value": 0.001,
                                  "rawValue": 0.001,
                                  "raw": "1e-3"
                                }
                              },
                              "leadingComments": null
                            },
                            "leadingComments": [
                              {
                                "type": "CommentLine",
                                "value": "make box flat",
                                "start": 12864,
                                "end": 12879,
                                "loc": {
                                  "start": {
                                    "line": 298,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 298,
                                    "column": 27
                                  }
                                },
                                "range": [
                                  12864,
                                  12879
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 12924,
                            "end": 12942,
                            "loc": {
                              "start": {
                                "line": 300,
                                "column": 12
                              },
                              "end": {
                                "line": 300,
                                "column": 30
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 12924,
                              "end": 12941,
                              "loc": {
                                "start": {
                                  "line": 300,
                                  "column": 12
                                },
                                "end": {
                                  "line": 300,
                                  "column": 29
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 12924,
                                "end": 12934,
                                "loc": {
                                  "start": {
                                    "line": 300,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 300,
                                    "column": 22
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 12924,
                                  "end": 12932,
                                  "loc": {
                                    "start": {
                                      "line": 300,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 300,
                                      "column": 20
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 12924,
                                    "end": 12928,
                                    "loc": {
                                      "start": {
                                        "line": 300,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 300,
                                        "column": 16
                                      }
                                    },
                                    "name": "bbox"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 12929,
                                    "end": 12932,
                                    "loc": {
                                      "start": {
                                        "line": 300,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 300,
                                        "column": 20
                                      }
                                    },
                                    "name": "max"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 12933,
                                  "end": 12934,
                                  "loc": {
                                    "start": {
                                      "line": 300,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 300,
                                      "column": 22
                                    }
                                  },
                                  "name": "z"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "Literal",
                                "start": 12937,
                                "end": 12941,
                                "loc": {
                                  "start": {
                                    "line": 300,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 300,
                                    "column": 29
                                  }
                                },
                                "value": 0.001,
                                "rawValue": 0.001,
                                "raw": "1e-3"
                              }
                            },
                            "trailingComments": [
                              {
                                "type": "CommentLine",
                                "value": " !nb: updates thisBox from bbox",
                                "start": 12955,
                                "end": 12988,
                                "loc": {
                                  "start": {
                                    "line": 301,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 301,
                                    "column": 45
                                  }
                                },
                                "range": [
                                  12955,
                                  12988
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 13001,
                            "end": 13026,
                            "loc": {
                              "start": {
                                "line": 302,
                                "column": 12
                              },
                              "end": {
                                "line": 302,
                                "column": 37
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 13001,
                              "end": 13025,
                              "loc": {
                                "start": {
                                  "line": 302,
                                  "column": 12
                                },
                                "end": {
                                  "line": 302,
                                  "column": 36
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 13001,
                                "end": 13010,
                                "loc": {
                                  "start": {
                                    "line": 302,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 302,
                                    "column": 21
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 13001,
                                  "end": 13005,
                                  "loc": {
                                    "start": {
                                      "line": 302,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 302,
                                      "column": 16
                                    }
                                  },
                                  "name": "bbox",
                                  "leadingComments": null
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 13006,
                                  "end": 13010,
                                  "loc": {
                                    "start": {
                                      "line": 302,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 302,
                                      "column": 21
                                    }
                                  },
                                  "name": "size"
                                },
                                "computed": false,
                                "leadingComments": null
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 13011,
                                  "end": 13024,
                                  "loc": {
                                    "start": {
                                      "line": 302,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 302,
                                      "column": 35
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 13011,
                                    "end": 13018,
                                    "loc": {
                                      "start": {
                                        "line": 302,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 302,
                                        "column": 29
                                      }
                                    },
                                    "name": "thisBox"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 13019,
                                    "end": 13024,
                                    "loc": {
                                      "start": {
                                        "line": 302,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 302,
                                        "column": 35
                                      }
                                    },
                                    "name": "scale"
                                  },
                                  "computed": false
                                }
                              ],
                              "leadingComments": null
                            },
                            "leadingComments": [
                              {
                                "type": "CommentLine",
                                "value": " !nb: updates thisBox from bbox",
                                "start": 12955,
                                "end": 12988,
                                "loc": {
                                  "start": {
                                    "line": 301,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 301,
                                    "column": 45
                                  }
                                },
                                "range": [
                                  12955,
                                  12988
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 13039,
                            "end": 13069,
                            "loc": {
                              "start": {
                                "line": 303,
                                "column": 12
                              },
                              "end": {
                                "line": 303,
                                "column": 42
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 13039,
                              "end": 13068,
                              "loc": {
                                "start": {
                                  "line": 303,
                                  "column": 12
                                },
                                "end": {
                                  "line": 303,
                                  "column": 41
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 13039,
                                "end": 13050,
                                "loc": {
                                  "start": {
                                    "line": 303,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 303,
                                    "column": 23
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 13039,
                                  "end": 13043,
                                  "loc": {
                                    "start": {
                                      "line": 303,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 303,
                                      "column": 16
                                    }
                                  },
                                  "name": "bbox"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 13044,
                                  "end": 13050,
                                  "loc": {
                                    "start": {
                                      "line": 303,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 303,
                                      "column": 23
                                    }
                                  },
                                  "name": "center"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 13051,
                                  "end": 13067,
                                  "loc": {
                                    "start": {
                                      "line": 303,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 303,
                                      "column": 40
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 13051,
                                    "end": 13058,
                                    "loc": {
                                      "start": {
                                        "line": 303,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 303,
                                        "column": 31
                                      }
                                    },
                                    "name": "thisBox"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 13059,
                                    "end": 13067,
                                    "loc": {
                                      "start": {
                                        "line": 303,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 303,
                                        "column": 40
                                      }
                                    },
                                    "name": "position"
                                  },
                                  "computed": false
                                }
                              ]
                            }
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 13091,
              "end": 13450,
              "loc": {
                "start": {
                  "line": 307,
                  "column": 4
                },
                "end": {
                  "line": 318,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 13091,
                "end": 13102,
                "loc": {
                  "start": {
                    "line": 307,
                    "column": 4
                  },
                  "end": {
                    "line": 307,
                    "column": 15
                  }
                },
                "name": "infiniteBox"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 13102,
                "end": 13450,
                "loc": {
                  "start": {
                    "line": 307,
                    "column": 15
                  },
                  "end": {
                    "line": 318,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 13105,
                  "end": 13450,
                  "loc": {
                    "start": {
                      "line": 307,
                      "column": 18
                    },
                    "end": {
                      "line": 318,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 13115,
                      "end": 13143,
                      "loc": {
                        "start": {
                          "line": 308,
                          "column": 8
                        },
                        "end": {
                          "line": 308,
                          "column": 36
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 13119,
                          "end": 13142,
                          "loc": {
                            "start": {
                              "line": 308,
                              "column": 12
                            },
                            "end": {
                              "line": 308,
                              "column": 35
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 13119,
                            "end": 13123,
                            "loc": {
                              "start": {
                                "line": 308,
                                "column": 12
                              },
                              "end": {
                                "line": 308,
                                "column": 16
                              }
                            },
                            "name": "bbox"
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 13126,
                            "end": 13142,
                            "loc": {
                              "start": {
                                "line": 308,
                                "column": 19
                              },
                              "end": {
                                "line": 308,
                                "column": 35
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 13130,
                              "end": 13140,
                              "loc": {
                                "start": {
                                  "line": 308,
                                  "column": 23
                                },
                                "end": {
                                  "line": 308,
                                  "column": 33
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 13130,
                                "end": 13135,
                                "loc": {
                                  "start": {
                                    "line": 308,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 308,
                                    "column": 28
                                  }
                                },
                                "name": "THREE"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 13136,
                                "end": 13140,
                                "loc": {
                                  "start": {
                                    "line": 308,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 308,
                                    "column": 33
                                  }
                                },
                                "name": "Box3"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 13152,
                      "end": 13181,
                      "loc": {
                        "start": {
                          "line": 309,
                          "column": 8
                        },
                        "end": {
                          "line": 309,
                          "column": 37
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 13152,
                        "end": 13180,
                        "loc": {
                          "start": {
                            "line": 309,
                            "column": 8
                          },
                          "end": {
                            "line": 309,
                            "column": 36
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 13152,
                          "end": 13164,
                          "loc": {
                            "start": {
                              "line": 309,
                              "column": 8
                            },
                            "end": {
                              "line": 309,
                              "column": 20
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 13152,
                            "end": 13160,
                            "loc": {
                              "start": {
                                "line": 309,
                                "column": 8
                              },
                              "end": {
                                "line": 309,
                                "column": 16
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 13152,
                              "end": 13156,
                              "loc": {
                                "start": {
                                  "line": 309,
                                  "column": 8
                                },
                                "end": {
                                  "line": 309,
                                  "column": 12
                                }
                              },
                              "name": "bbox"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 13157,
                              "end": 13160,
                              "loc": {
                                "start": {
                                  "line": 309,
                                  "column": 13
                                },
                                "end": {
                                  "line": 309,
                                  "column": 16
                                }
                              },
                              "name": "max"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13161,
                            "end": 13164,
                            "loc": {
                              "start": {
                                "line": 309,
                                "column": 17
                              },
                              "end": {
                                "line": 309,
                                "column": 20
                              }
                            },
                            "name": "set"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 13165,
                            "end": 13168,
                            "loc": {
                              "start": {
                                "line": 309,
                                "column": 21
                              },
                              "end": {
                                "line": 309,
                                "column": 24
                              }
                            },
                            "value": 100000,
                            "rawValue": 100000,
                            "raw": "1e5"
                          },
                          {
                            "type": "Literal",
                            "start": 13170,
                            "end": 13173,
                            "loc": {
                              "start": {
                                "line": 309,
                                "column": 26
                              },
                              "end": {
                                "line": 309,
                                "column": 29
                              }
                            },
                            "value": 100000,
                            "rawValue": 100000,
                            "raw": "1e5"
                          },
                          {
                            "type": "Literal",
                            "start": 13175,
                            "end": 13179,
                            "loc": {
                              "start": {
                                "line": 309,
                                "column": 31
                              },
                              "end": {
                                "line": 309,
                                "column": 35
                              }
                            },
                            "value": 0.001,
                            "rawValue": 0.001,
                            "raw": "1e-3"
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 13190,
                      "end": 13214,
                      "loc": {
                        "start": {
                          "line": 310,
                          "column": 8
                        },
                        "end": {
                          "line": 310,
                          "column": 32
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 13190,
                        "end": 13213,
                        "loc": {
                          "start": {
                            "line": 310,
                            "column": 8
                          },
                          "end": {
                            "line": 310,
                            "column": 31
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 13190,
                          "end": 13203,
                          "loc": {
                            "start": {
                              "line": 310,
                              "column": 8
                            },
                            "end": {
                              "line": 310,
                              "column": 21
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 13190,
                            "end": 13198,
                            "loc": {
                              "start": {
                                "line": 310,
                                "column": 8
                              },
                              "end": {
                                "line": 310,
                                "column": 16
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 13190,
                              "end": 13194,
                              "loc": {
                                "start": {
                                  "line": 310,
                                  "column": 8
                                },
                                "end": {
                                  "line": 310,
                                  "column": 12
                                }
                              },
                              "name": "bbox"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 13195,
                              "end": 13198,
                              "loc": {
                                "start": {
                                  "line": 310,
                                  "column": 13
                                },
                                "end": {
                                  "line": 310,
                                  "column": 16
                                }
                              },
                              "name": "min"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13199,
                            "end": 13203,
                            "loc": {
                              "start": {
                                "line": 310,
                                "column": 17
                              },
                              "end": {
                                "line": 310,
                                "column": 21
                              }
                            },
                            "name": "copy"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 13204,
                            "end": 13212,
                            "loc": {
                              "start": {
                                "line": 310,
                                "column": 22
                              },
                              "end": {
                                "line": 310,
                                "column": 30
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 13204,
                              "end": 13208,
                              "loc": {
                                "start": {
                                  "line": 310,
                                  "column": 22
                                },
                                "end": {
                                  "line": 310,
                                  "column": 26
                                }
                              },
                              "name": "bbox"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 13209,
                              "end": 13212,
                              "loc": {
                                "start": {
                                  "line": 310,
                                  "column": 27
                                },
                                "end": {
                                  "line": 310,
                                  "column": 30
                                }
                              },
                              "name": "max"
                            },
                            "computed": false
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 13223,
                      "end": 13241,
                      "loc": {
                        "start": {
                          "line": 311,
                          "column": 8
                        },
                        "end": {
                          "line": 311,
                          "column": 26
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 13223,
                        "end": 13240,
                        "loc": {
                          "start": {
                            "line": 311,
                            "column": 8
                          },
                          "end": {
                            "line": 311,
                            "column": 25
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 13223,
                          "end": 13238,
                          "loc": {
                            "start": {
                              "line": 311,
                              "column": 8
                            },
                            "end": {
                              "line": 311,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 13223,
                            "end": 13231,
                            "loc": {
                              "start": {
                                "line": 311,
                                "column": 8
                              },
                              "end": {
                                "line": 311,
                                "column": 16
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 13223,
                              "end": 13227,
                              "loc": {
                                "start": {
                                  "line": 311,
                                  "column": 8
                                },
                                "end": {
                                  "line": 311,
                                  "column": 12
                                }
                              },
                              "name": "bbox"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 13228,
                              "end": 13231,
                              "loc": {
                                "start": {
                                  "line": 311,
                                  "column": 13
                                },
                                "end": {
                                  "line": 311,
                                  "column": 16
                                }
                              },
                              "name": "min"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13232,
                            "end": 13238,
                            "loc": {
                              "start": {
                                "line": 311,
                                "column": 17
                              },
                              "end": {
                                "line": 311,
                                "column": 23
                              }
                            },
                            "name": "negate"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 13251,
                      "end": 13276,
                      "loc": {
                        "start": {
                          "line": 313,
                          "column": 8
                        },
                        "end": {
                          "line": 313,
                          "column": 33
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 13255,
                          "end": 13275,
                          "loc": {
                            "start": {
                              "line": 313,
                              "column": 12
                            },
                            "end": {
                              "line": 313,
                              "column": 32
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 13255,
                            "end": 13262,
                            "loc": {
                              "start": {
                                "line": 313,
                                "column": 12
                              },
                              "end": {
                                "line": 313,
                                "column": 19
                              }
                            },
                            "name": "thisBox"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 13265,
                            "end": 13275,
                            "loc": {
                              "start": {
                                "line": 313,
                                "column": 22
                              },
                              "end": {
                                "line": 313,
                                "column": 32
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 13265,
                              "end": 13269,
                              "loc": {
                                "start": {
                                  "line": 313,
                                  "column": 22
                                },
                                "end": {
                                  "line": 313,
                                  "column": 26
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 13270,
                              "end": 13275,
                              "loc": {
                                "start": {
                                  "line": 313,
                                  "column": 27
                                },
                                "end": {
                                  "line": 313,
                                  "column": 32
                                }
                              },
                              "name": "__box"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 13285,
                      "end": 13329,
                      "loc": {
                        "start": {
                          "line": 314,
                          "column": 8
                        },
                        "end": {
                          "line": 314,
                          "column": 52
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 13285,
                        "end": 13328,
                        "loc": {
                          "start": {
                            "line": 314,
                            "column": 8
                          },
                          "end": {
                            "line": 314,
                            "column": 51
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 13285,
                          "end": 13301,
                          "loc": {
                            "start": {
                              "line": 314,
                              "column": 8
                            },
                            "end": {
                              "line": 314,
                              "column": 24
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 13285,
                            "end": 13292,
                            "loc": {
                              "start": {
                                "line": 314,
                                "column": 8
                              },
                              "end": {
                                "line": 314,
                                "column": 15
                              }
                            },
                            "name": "thisBox"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13293,
                            "end": 13301,
                            "loc": {
                              "start": {
                                "line": 314,
                                "column": 16
                              },
                              "end": {
                                "line": 314,
                                "column": 24
                              }
                            },
                            "name": "material"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 13304,
                          "end": 13328,
                          "loc": {
                            "start": {
                              "line": 314,
                              "column": 27
                            },
                            "end": {
                              "line": 314,
                              "column": 51
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 13304,
                            "end": 13308,
                            "loc": {
                              "start": {
                                "line": 314,
                                "column": 27
                              },
                              "end": {
                                "line": 314,
                                "column": 31
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13309,
                            "end": 13328,
                            "loc": {
                              "start": {
                                "line": 314,
                                "column": 32
                              },
                              "end": {
                                "line": 314,
                                "column": 51
                              }
                            },
                            "name": "infiniteBoxMaterial"
                          },
                          "computed": false
                        }
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " !nb: updates thisBox from bbox",
                          "start": 13338,
                          "end": 13371,
                          "loc": {
                            "start": {
                              "line": 315,
                              "column": 8
                            },
                            "end": {
                              "line": 315,
                              "column": 41
                            }
                          },
                          "range": [
                            13338,
                            13371
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 13380,
                      "end": 13405,
                      "loc": {
                        "start": {
                          "line": 316,
                          "column": 8
                        },
                        "end": {
                          "line": 316,
                          "column": 33
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 13380,
                        "end": 13404,
                        "loc": {
                          "start": {
                            "line": 316,
                            "column": 8
                          },
                          "end": {
                            "line": 316,
                            "column": 32
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 13380,
                          "end": 13389,
                          "loc": {
                            "start": {
                              "line": 316,
                              "column": 8
                            },
                            "end": {
                              "line": 316,
                              "column": 17
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 13380,
                            "end": 13384,
                            "loc": {
                              "start": {
                                "line": 316,
                                "column": 8
                              },
                              "end": {
                                "line": 316,
                                "column": 12
                              }
                            },
                            "name": "bbox",
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13385,
                            "end": 13389,
                            "loc": {
                              "start": {
                                "line": 316,
                                "column": 13
                              },
                              "end": {
                                "line": 316,
                                "column": 17
                              }
                            },
                            "name": "size"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 13390,
                            "end": 13403,
                            "loc": {
                              "start": {
                                "line": 316,
                                "column": 18
                              },
                              "end": {
                                "line": 316,
                                "column": 31
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 13390,
                              "end": 13397,
                              "loc": {
                                "start": {
                                  "line": 316,
                                  "column": 18
                                },
                                "end": {
                                  "line": 316,
                                  "column": 25
                                }
                              },
                              "name": "thisBox"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 13398,
                              "end": 13403,
                              "loc": {
                                "start": {
                                  "line": 316,
                                  "column": 26
                                },
                                "end": {
                                  "line": 316,
                                  "column": 31
                                }
                              },
                              "name": "scale"
                            },
                            "computed": false
                          }
                        ],
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " !nb: updates thisBox from bbox",
                          "start": 13338,
                          "end": 13371,
                          "loc": {
                            "start": {
                              "line": 315,
                              "column": 8
                            },
                            "end": {
                              "line": 315,
                              "column": 41
                            }
                          },
                          "range": [
                            13338,
                            13371
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 13414,
                      "end": 13444,
                      "loc": {
                        "start": {
                          "line": 317,
                          "column": 8
                        },
                        "end": {
                          "line": 317,
                          "column": 38
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 13414,
                        "end": 13443,
                        "loc": {
                          "start": {
                            "line": 317,
                            "column": 8
                          },
                          "end": {
                            "line": 317,
                            "column": 37
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 13414,
                          "end": 13425,
                          "loc": {
                            "start": {
                              "line": 317,
                              "column": 8
                            },
                            "end": {
                              "line": 317,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 13414,
                            "end": 13418,
                            "loc": {
                              "start": {
                                "line": 317,
                                "column": 8
                              },
                              "end": {
                                "line": 317,
                                "column": 12
                              }
                            },
                            "name": "bbox"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13419,
                            "end": 13425,
                            "loc": {
                              "start": {
                                "line": 317,
                                "column": 13
                              },
                              "end": {
                                "line": 317,
                                "column": 19
                              }
                            },
                            "name": "center"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 13426,
                            "end": 13442,
                            "loc": {
                              "start": {
                                "line": 317,
                                "column": 20
                              },
                              "end": {
                                "line": 317,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 13426,
                              "end": 13433,
                              "loc": {
                                "start": {
                                  "line": 317,
                                  "column": 20
                                },
                                "end": {
                                  "line": 317,
                                  "column": 27
                                }
                              },
                              "name": "thisBox"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 13434,
                              "end": 13442,
                              "loc": {
                                "start": {
                                  "line": 317,
                                  "column": 28
                                },
                                "end": {
                                  "line": 317,
                                  "column": 36
                                }
                              },
                              "name": "position"
                            },
                            "computed": false
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 13456,
              "end": 13556,
              "loc": {
                "start": {
                  "line": 320,
                  "column": 4
                },
                "end": {
                  "line": 323,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 13456,
                "end": 13464,
                "loc": {
                  "start": {
                    "line": 320,
                    "column": 4
                  },
                  "end": {
                    "line": 320,
                    "column": 12
                  }
                },
                "name": "showGrid"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 13464,
                "end": 13556,
                "loc": {
                  "start": {
                    "line": 320,
                    "column": 12
                  },
                  "end": {
                    "line": 323,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 13467,
                  "end": 13556,
                  "loc": {
                    "start": {
                      "line": 320,
                      "column": 15
                    },
                    "end": {
                      "line": 323,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 13477,
                      "end": 13523,
                      "loc": {
                        "start": {
                          "line": 321,
                          "column": 8
                        },
                        "end": {
                          "line": 321,
                          "column": 54
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 13477,
                        "end": 13522,
                        "loc": {
                          "start": {
                            "line": 321,
                            "column": 8
                          },
                          "end": {
                            "line": 321,
                            "column": 53
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 13477,
                          "end": 13494,
                          "loc": {
                            "start": {
                              "line": 321,
                              "column": 8
                            },
                            "end": {
                              "line": 321,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 13477,
                            "end": 13481,
                            "loc": {
                              "start": {
                                "line": 321,
                                "column": 8
                              },
                              "end": {
                                "line": 321,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13482,
                            "end": 13494,
                            "loc": {
                              "start": {
                                "line": 321,
                                "column": 13
                              },
                              "end": {
                                "line": 321,
                                "column": 25
                              }
                            },
                            "name": "addAuxObject"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrayExpression",
                            "start": 13495,
                            "end": 13521,
                            "loc": {
                              "start": {
                                "line": 321,
                                "column": 26
                              },
                              "end": {
                                "line": 321,
                                "column": 52
                              }
                            },
                            "elements": [
                              {
                                "type": "MemberExpression",
                                "start": 13496,
                                "end": 13507,
                                "loc": {
                                  "start": {
                                    "line": 321,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 321,
                                    "column": 38
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 13496,
                                  "end": 13500,
                                  "loc": {
                                    "start": {
                                      "line": 321,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 321,
                                      "column": 31
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 13501,
                                  "end": 13507,
                                  "loc": {
                                    "start": {
                                      "line": 321,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 321,
                                      "column": 38
                                    }
                                  },
                                  "name": "__grid"
                                },
                                "computed": false
                              },
                              {
                                "type": "MemberExpression",
                                "start": 13509,
                                "end": 13520,
                                "loc": {
                                  "start": {
                                    "line": 321,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 321,
                                    "column": 51
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 13509,
                                  "end": 13513,
                                  "loc": {
                                    "start": {
                                      "line": 321,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 321,
                                      "column": 44
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 13514,
                                  "end": 13520,
                                  "loc": {
                                    "start": {
                                      "line": 321,
                                      "column": 45
                                    },
                                    "end": {
                                      "line": 321,
                                      "column": 51
                                    }
                                  },
                                  "name": "__axis"
                                },
                                "computed": false
                              }
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 13532,
                      "end": 13550,
                      "loc": {
                        "start": {
                          "line": 322,
                          "column": 8
                        },
                        "end": {
                          "line": 322,
                          "column": 26
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 13532,
                        "end": 13549,
                        "loc": {
                          "start": {
                            "line": 322,
                            "column": 8
                          },
                          "end": {
                            "line": 322,
                            "column": 25
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 13532,
                          "end": 13541,
                          "loc": {
                            "start": {
                              "line": 322,
                              "column": 8
                            },
                            "end": {
                              "line": 322,
                              "column": 17
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 13532,
                            "end": 13536,
                            "loc": {
                              "start": {
                                "line": 322,
                                "column": 8
                              },
                              "end": {
                                "line": 322,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13537,
                            "end": 13541,
                            "loc": {
                              "start": {
                                "line": 322,
                                "column": 13
                              },
                              "end": {
                                "line": 322,
                                "column": 17
                              }
                            },
                            "name": "zoom"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "UnaryExpression",
                          "start": 13544,
                          "end": 13549,
                          "loc": {
                            "start": {
                              "line": 322,
                              "column": 20
                            },
                            "end": {
                              "line": 322,
                              "column": 25
                            }
                          },
                          "operator": "-",
                          "prefix": true,
                          "argument": {
                            "type": "Literal",
                            "start": 13546,
                            "end": 13549,
                            "loc": {
                              "start": {
                                "line": 322,
                                "column": 22
                              },
                              "end": {
                                "line": 322,
                                "column": 25
                              }
                            },
                            "value": 250,
                            "rawValue": 250,
                            "raw": "250"
                          }
                        }
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 13562,
              "end": 13638,
              "loc": {
                "start": {
                  "line": 325,
                  "column": 4
                },
                "end": {
                  "line": 327,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 13562,
                "end": 13570,
                "loc": {
                  "start": {
                    "line": 325,
                    "column": 4
                  },
                  "end": {
                    "line": 325,
                    "column": 12
                  }
                },
                "name": "hideGrid"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 13570,
                "end": 13638,
                "loc": {
                  "start": {
                    "line": 325,
                    "column": 12
                  },
                  "end": {
                    "line": 327,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 13573,
                  "end": 13638,
                  "loc": {
                    "start": {
                      "line": 325,
                      "column": 15
                    },
                    "end": {
                      "line": 327,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 13583,
                      "end": 13632,
                      "loc": {
                        "start": {
                          "line": 326,
                          "column": 8
                        },
                        "end": {
                          "line": 326,
                          "column": 57
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 13583,
                        "end": 13631,
                        "loc": {
                          "start": {
                            "line": 326,
                            "column": 8
                          },
                          "end": {
                            "line": 326,
                            "column": 56
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 13583,
                          "end": 13603,
                          "loc": {
                            "start": {
                              "line": 326,
                              "column": 8
                            },
                            "end": {
                              "line": 326,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 13583,
                            "end": 13587,
                            "loc": {
                              "start": {
                                "line": 326,
                                "column": 8
                              },
                              "end": {
                                "line": 326,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13588,
                            "end": 13603,
                            "loc": {
                              "start": {
                                "line": 326,
                                "column": 13
                              },
                              "end": {
                                "line": 326,
                                "column": 28
                              }
                            },
                            "name": "removeAuxObject"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrayExpression",
                            "start": 13604,
                            "end": 13630,
                            "loc": {
                              "start": {
                                "line": 326,
                                "column": 29
                              },
                              "end": {
                                "line": 326,
                                "column": 55
                              }
                            },
                            "elements": [
                              {
                                "type": "MemberExpression",
                                "start": 13605,
                                "end": 13616,
                                "loc": {
                                  "start": {
                                    "line": 326,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 326,
                                    "column": 41
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 13605,
                                  "end": 13609,
                                  "loc": {
                                    "start": {
                                      "line": 326,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 326,
                                      "column": 34
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 13610,
                                  "end": 13616,
                                  "loc": {
                                    "start": {
                                      "line": 326,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 326,
                                      "column": 41
                                    }
                                  },
                                  "name": "__grid"
                                },
                                "computed": false
                              },
                              {
                                "type": "MemberExpression",
                                "start": 13618,
                                "end": 13629,
                                "loc": {
                                  "start": {
                                    "line": 326,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 326,
                                    "column": 54
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 13618,
                                  "end": 13622,
                                  "loc": {
                                    "start": {
                                      "line": 326,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 326,
                                      "column": 47
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 13623,
                                  "end": 13629,
                                  "loc": {
                                    "start": {
                                      "line": 326,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 326,
                                      "column": 54
                                    }
                                  },
                                  "name": "__axis"
                                },
                                "computed": false
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 13644,
              "end": 17443,
              "loc": {
                "start": {
                  "line": 329,
                  "column": 4
                },
                "end": {
                  "line": 407,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 13644,
                "end": 13654,
                "loc": {
                  "start": {
                    "line": 329,
                    "column": 4
                  },
                  "end": {
                    "line": 329,
                    "column": 14
                  }
                },
                "name": "updateGrid"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 13654,
                "end": 17443,
                "loc": {
                  "start": {
                    "line": 329,
                    "column": 14
                  },
                  "end": {
                    "line": 407,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 13655,
                    "end": 13669,
                    "loc": {
                      "start": {
                        "line": 329,
                        "column": 15
                      },
                      "end": {
                        "line": 329,
                        "column": 29
                      }
                    },
                    "name": "cameraDistance"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 13671,
                  "end": 17443,
                  "loc": {
                    "start": {
                      "line": 329,
                      "column": 31
                    },
                    "end": {
                      "line": 407,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 13681,
                      "end": 13720,
                      "loc": {
                        "start": {
                          "line": 330,
                          "column": 8
                        },
                        "end": {
                          "line": 330,
                          "column": 47
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 13681,
                        "end": 13719,
                        "loc": {
                          "start": {
                            "line": 330,
                            "column": 8
                          },
                          "end": {
                            "line": 330,
                            "column": 46
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 13681,
                          "end": 13695,
                          "loc": {
                            "start": {
                              "line": 330,
                              "column": 8
                            },
                            "end": {
                              "line": 330,
                              "column": 22
                            }
                          },
                          "name": "cameraDistance"
                        },
                        "right": {
                          "type": "LogicalExpression",
                          "start": 13698,
                          "end": 13719,
                          "loc": {
                            "start": {
                              "line": 330,
                              "column": 25
                            },
                            "end": {
                              "line": 330,
                              "column": 46
                            }
                          },
                          "left": {
                            "type": "Identifier",
                            "start": 13698,
                            "end": 13712,
                            "loc": {
                              "start": {
                                "line": 330,
                                "column": 25
                              },
                              "end": {
                                "line": 330,
                                "column": 39
                              }
                            },
                            "name": "cameraDistance"
                          },
                          "operator": "||",
                          "right": {
                            "type": "Literal",
                            "start": 13716,
                            "end": 13719,
                            "loc": {
                              "start": {
                                "line": 330,
                                "column": 43
                              },
                              "end": {
                                "line": 330,
                                "column": 46
                              }
                            },
                            "value": 100,
                            "rawValue": 100,
                            "raw": "100"
                          }
                        }
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "undefined on initial call",
                          "start": 13721,
                          "end": 13748,
                          "loc": {
                            "start": {
                              "line": 330,
                              "column": 48
                            },
                            "end": {
                              "line": 330,
                              "column": 75
                            }
                          },
                          "range": [
                            13721,
                            13748
                          ]
                        },
                        {
                          "type": "CommentLine",
                          "value": " lines length and number calculating",
                          "start": 13757,
                          "end": 13795,
                          "loc": {
                            "start": {
                              "line": 331,
                              "column": 8
                            },
                            "end": {
                              "line": 331,
                              "column": 46
                            }
                          },
                          "range": [
                            13757,
                            13795
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 13804,
                      "end": 13864,
                      "loc": {
                        "start": {
                          "line": 332,
                          "column": 8
                        },
                        "end": {
                          "line": 332,
                          "column": 68
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 13808,
                          "end": 13863,
                          "loc": {
                            "start": {
                              "line": 332,
                              "column": 12
                            },
                            "end": {
                              "line": 332,
                              "column": 67
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 13808,
                            "end": 13812,
                            "loc": {
                              "start": {
                                "line": 332,
                                "column": 12
                              },
                              "end": {
                                "line": 332,
                                "column": 16
                              }
                            },
                            "name": "step",
                            "leadingComments": null
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 13815,
                            "end": 13863,
                            "loc": {
                              "start": {
                                "line": 332,
                                "column": 19
                              },
                              "end": {
                                "line": 332,
                                "column": 67
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 13815,
                              "end": 13832,
                              "loc": {
                                "start": {
                                  "line": 332,
                                  "column": 19
                                },
                                "end": {
                                  "line": 332,
                                  "column": 36
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 13815,
                                "end": 13819,
                                "loc": {
                                  "start": {
                                    "line": 332,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 332,
                                    "column": 23
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 13820,
                                "end": 13832,
                                "loc": {
                                  "start": {
                                    "line": 332,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 332,
                                    "column": 36
                                  }
                                },
                                "name": "calcGridStep"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 13833,
                                "end": 13847,
                                "loc": {
                                  "start": {
                                    "line": 332,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 332,
                                    "column": 51
                                  }
                                },
                                "name": "cameraDistance"
                              },
                              {
                                "type": "MemberExpression",
                                "start": 13849,
                                "end": 13862,
                                "loc": {
                                  "start": {
                                    "line": 332,
                                    "column": 53
                                  },
                                  "end": {
                                    "line": 332,
                                    "column": 66
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 13849,
                                  "end": 13853,
                                  "loc": {
                                    "start": {
                                      "line": 332,
                                      "column": 53
                                    },
                                    "end": {
                                      "line": 332,
                                      "column": 57
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 13854,
                                  "end": 13862,
                                  "loc": {
                                    "start": {
                                      "line": 332,
                                      "column": 58
                                    },
                                    "end": {
                                      "line": 332,
                                      "column": 66
                                    }
                                  },
                                  "name": "gridStep"
                                },
                                "computed": false
                              }
                            ]
                          },
                          "leadingComments": null
                        }
                      ],
                      "kind": "var",
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "undefined on initial call",
                          "start": 13721,
                          "end": 13748,
                          "loc": {
                            "start": {
                              "line": 330,
                              "column": 48
                            },
                            "end": {
                              "line": 330,
                              "column": 75
                            }
                          },
                          "range": [
                            13721,
                            13748
                          ]
                        },
                        {
                          "type": "CommentLine",
                          "value": " lines length and number calculating",
                          "start": 13757,
                          "end": 13795,
                          "loc": {
                            "start": {
                              "line": 331,
                              "column": 8
                            },
                            "end": {
                              "line": 331,
                              "column": 46
                            }
                          },
                          "range": [
                            13757,
                            13795
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 13873,
                      "end": 13928,
                      "loc": {
                        "start": {
                          "line": 333,
                          "column": 8
                        },
                        "end": {
                          "line": 333,
                          "column": 63
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 13877,
                          "end": 13927,
                          "loc": {
                            "start": {
                              "line": 333,
                              "column": 12
                            },
                            "end": {
                              "line": 333,
                              "column": 62
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 13877,
                            "end": 13885,
                            "loc": {
                              "start": {
                                "line": 333,
                                "column": 12
                              },
                              "end": {
                                "line": 333,
                                "column": 20
                              }
                            },
                            "name": "axisSize"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 13888,
                            "end": 13927,
                            "loc": {
                              "start": {
                                "line": 333,
                                "column": 23
                              },
                              "end": {
                                "line": 333,
                                "column": 62
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 13888,
                              "end": 13905,
                              "loc": {
                                "start": {
                                  "line": 333,
                                  "column": 23
                                },
                                "end": {
                                  "line": 333,
                                  "column": 40
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 13888,
                                "end": 13892,
                                "loc": {
                                  "start": {
                                    "line": 333,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 333,
                                    "column": 27
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 13893,
                                "end": 13905,
                                "loc": {
                                  "start": {
                                    "line": 333,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 333,
                                    "column": 40
                                  }
                                },
                                "name": "calcAxisSize"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 13906,
                                "end": 13920,
                                "loc": {
                                  "start": {
                                    "line": 333,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 333,
                                    "column": 55
                                  }
                                },
                                "name": "cameraDistance"
                              },
                              {
                                "type": "Identifier",
                                "start": 13922,
                                "end": 13926,
                                "loc": {
                                  "start": {
                                    "line": 333,
                                    "column": 57
                                  },
                                  "end": {
                                    "line": 333,
                                    "column": 61
                                  }
                                },
                                "name": "step"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 13937,
                      "end": 13980,
                      "loc": {
                        "start": {
                          "line": 334,
                          "column": 8
                        },
                        "end": {
                          "line": 334,
                          "column": 51
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 13941,
                          "end": 13979,
                          "loc": {
                            "start": {
                              "line": 334,
                              "column": 12
                            },
                            "end": {
                              "line": 334,
                              "column": 50
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 13941,
                            "end": 13951,
                            "loc": {
                              "start": {
                                "line": 334,
                                "column": 12
                              },
                              "end": {
                                "line": 334,
                                "column": 22
                              }
                            },
                            "name": "screenSize"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 13954,
                            "end": 13979,
                            "loc": {
                              "start": {
                                "line": 334,
                                "column": 25
                              },
                              "end": {
                                "line": 334,
                                "column": 50
                              }
                            },
                            "left": {
                              "type": "BinaryExpression",
                              "start": 13954,
                              "end": 13975,
                              "loc": {
                                "start": {
                                  "line": 334,
                                  "column": 25
                                },
                                "end": {
                                  "line": 334,
                                  "column": 46
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 13954,
                                "end": 13958,
                                "loc": {
                                  "start": {
                                    "line": 334,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 334,
                                    "column": 29
                                  }
                                },
                                "name": "step"
                              },
                              "operator": "*",
                              "right": {
                                "type": "MemberExpression",
                                "start": 13962,
                                "end": 13975,
                                "loc": {
                                  "start": {
                                    "line": 334,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 334,
                                    "column": 46
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 13962,
                                  "end": 13966,
                                  "loc": {
                                    "start": {
                                      "line": 334,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 334,
                                      "column": 37
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 13967,
                                  "end": 13975,
                                  "loc": {
                                    "start": {
                                      "line": 334,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 334,
                                      "column": 46
                                    }
                                  },
                                  "name": "gridSize"
                                },
                                "computed": false
                              }
                            },
                            "operator": "*",
                            "right": {
                              "type": "Literal",
                              "start": 13978,
                              "end": 13979,
                              "loc": {
                                "start": {
                                  "line": 334,
                                  "column": 49
                                },
                                "end": {
                                  "line": 334,
                                  "column": 50
                                }
                              },
                              "value": 2,
                              "rawValue": 2,
                              "raw": "2"
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 13990,
                      "end": 17437,
                      "loc": {
                        "start": {
                          "line": 336,
                          "column": 8
                        },
                        "end": {
                          "line": 406,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "LogicalExpression",
                        "start": 13994,
                        "end": 14046,
                        "loc": {
                          "start": {
                            "line": 336,
                            "column": 12
                          },
                          "end": {
                            "line": 336,
                            "column": 64
                          }
                        },
                        "left": {
                          "type": "BinaryExpression",
                          "start": 13994,
                          "end": 14016,
                          "loc": {
                            "start": {
                              "line": 336,
                              "column": 12
                            },
                            "end": {
                              "line": 336,
                              "column": 34
                            }
                          },
                          "left": {
                            "type": "MemberExpression",
                            "start": 13994,
                            "end": 14007,
                            "loc": {
                              "start": {
                                "line": 336,
                                "column": 12
                              },
                              "end": {
                                "line": 336,
                                "column": 25
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 13994,
                              "end": 13998,
                              "loc": {
                                "start": {
                                  "line": 336,
                                  "column": 12
                                },
                                "end": {
                                  "line": 336,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 13999,
                              "end": 14007,
                              "loc": {
                                "start": {
                                  "line": 336,
                                  "column": 17
                                },
                                "end": {
                                  "line": 336,
                                  "column": 25
                                }
                              },
                              "name": "gridStep"
                            },
                            "computed": false
                          },
                          "operator": "!==",
                          "right": {
                            "type": "Identifier",
                            "start": 14012,
                            "end": 14016,
                            "loc": {
                              "start": {
                                "line": 336,
                                "column": 30
                              },
                              "end": {
                                "line": 336,
                                "column": 34
                              }
                            },
                            "name": "step"
                          }
                        },
                        "operator": "||",
                        "right": {
                          "type": "BinaryExpression",
                          "start": 14020,
                          "end": 14046,
                          "loc": {
                            "start": {
                              "line": 336,
                              "column": 38
                            },
                            "end": {
                              "line": 336,
                              "column": 64
                            }
                          },
                          "left": {
                            "type": "MemberExpression",
                            "start": 14020,
                            "end": 14033,
                            "loc": {
                              "start": {
                                "line": 336,
                                "column": 38
                              },
                              "end": {
                                "line": 336,
                                "column": 51
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 14020,
                              "end": 14024,
                              "loc": {
                                "start": {
                                  "line": 336,
                                  "column": 38
                                },
                                "end": {
                                  "line": 336,
                                  "column": 42
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 14025,
                              "end": 14033,
                              "loc": {
                                "start": {
                                  "line": 336,
                                  "column": 43
                                },
                                "end": {
                                  "line": 336,
                                  "column": 51
                                }
                              },
                              "name": "axisSize"
                            },
                            "computed": false
                          },
                          "operator": "!==",
                          "right": {
                            "type": "Identifier",
                            "start": 14038,
                            "end": 14046,
                            "loc": {
                              "start": {
                                "line": 336,
                                "column": 56
                              },
                              "end": {
                                "line": 336,
                                "column": 64
                              }
                            },
                            "name": "axisSize"
                          }
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 14048,
                        "end": 17437,
                        "loc": {
                          "start": {
                            "line": 336,
                            "column": 66
                          },
                          "end": {
                            "line": 406,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 14062,
                            "end": 14083,
                            "loc": {
                              "start": {
                                "line": 337,
                                "column": 12
                              },
                              "end": {
                                "line": 337,
                                "column": 33
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 14062,
                              "end": 14082,
                              "loc": {
                                "start": {
                                  "line": 337,
                                  "column": 12
                                },
                                "end": {
                                  "line": 337,
                                  "column": 32
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 14062,
                                "end": 14075,
                                "loc": {
                                  "start": {
                                    "line": 337,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 337,
                                    "column": 25
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 14062,
                                  "end": 14066,
                                  "loc": {
                                    "start": {
                                      "line": 337,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 337,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 14067,
                                  "end": 14075,
                                  "loc": {
                                    "start": {
                                      "line": 337,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 337,
                                      "column": 25
                                    }
                                  },
                                  "name": "gridStep"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "Identifier",
                                "start": 14078,
                                "end": 14082,
                                "loc": {
                                  "start": {
                                    "line": 337,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 337,
                                    "column": 32
                                  }
                                },
                                "name": "step"
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 14096,
                            "end": 14121,
                            "loc": {
                              "start": {
                                "line": 338,
                                "column": 12
                              },
                              "end": {
                                "line": 338,
                                "column": 37
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 14096,
                              "end": 14120,
                              "loc": {
                                "start": {
                                  "line": 338,
                                  "column": 12
                                },
                                "end": {
                                  "line": 338,
                                  "column": 36
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 14096,
                                "end": 14109,
                                "loc": {
                                  "start": {
                                    "line": 338,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 338,
                                    "column": 25
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 14096,
                                  "end": 14100,
                                  "loc": {
                                    "start": {
                                      "line": 338,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 338,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 14101,
                                  "end": 14109,
                                  "loc": {
                                    "start": {
                                      "line": 338,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 338,
                                      "column": 25
                                    }
                                  },
                                  "name": "axisSize"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "Identifier",
                                "start": 14112,
                                "end": 14120,
                                "loc": {
                                  "start": {
                                    "line": 338,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 338,
                                    "column": 36
                                  }
                                },
                                "name": "axisSize"
                              }
                            }
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 14135,
                            "end": 14168,
                            "loc": {
                              "start": {
                                "line": 340,
                                "column": 12
                              },
                              "end": {
                                "line": 340,
                                "column": 45
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 14139,
                                "end": 14152,
                                "loc": {
                                  "start": {
                                    "line": 340,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 340,
                                    "column": 29
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 14139,
                                  "end": 14148,
                                  "loc": {
                                    "start": {
                                      "line": 340,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 340,
                                      "column": 25
                                    }
                                  },
                                  "name": "gridCount"
                                },
                                "init": {
                                  "type": "Literal",
                                  "start": 14151,
                                  "end": 14152,
                                  "loc": {
                                    "start": {
                                      "line": 340,
                                      "column": 28
                                    },
                                    "end": {
                                      "line": 340,
                                      "column": 29
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              },
                              {
                                "type": "VariableDeclarator",
                                "start": 14154,
                                "end": 14167,
                                "loc": {
                                  "start": {
                                    "line": 340,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 340,
                                    "column": 44
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 14154,
                                  "end": 14163,
                                  "loc": {
                                    "start": {
                                      "line": 340,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 340,
                                      "column": 40
                                    }
                                  },
                                  "name": "axisCount"
                                },
                                "init": {
                                  "type": "Literal",
                                  "start": 14166,
                                  "end": 14167,
                                  "loc": {
                                    "start": {
                                      "line": 340,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 340,
                                      "column": 44
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 14181,
                            "end": 14315,
                            "loc": {
                              "start": {
                                "line": 341,
                                "column": 12
                              },
                              "end": {
                                "line": 343,
                                "column": 14
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 14185,
                                "end": 14314,
                                "loc": {
                                  "start": {
                                    "line": 341,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 343,
                                    "column": 13
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 14185,
                                  "end": 14194,
                                  "loc": {
                                    "start": {
                                      "line": 341,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 341,
                                      "column": 25
                                    }
                                  },
                                  "name": "addToGrid"
                                },
                                "init": {
                                  "type": "ArrowFunctionExpression",
                                  "start": 14197,
                                  "end": 14314,
                                  "loc": {
                                    "start": {
                                      "line": 341,
                                      "column": 28
                                    },
                                    "end": {
                                      "line": 343,
                                      "column": 13
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": false,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 14198,
                                      "end": 14199,
                                      "loc": {
                                        "start": {
                                          "line": 341,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 341,
                                          "column": 30
                                        }
                                      },
                                      "name": "x"
                                    },
                                    {
                                      "type": "Identifier",
                                      "start": 14201,
                                      "end": 14202,
                                      "loc": {
                                        "start": {
                                          "line": 341,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 341,
                                          "column": 33
                                        }
                                      },
                                      "name": "y"
                                    },
                                    {
                                      "type": "Identifier",
                                      "start": 14204,
                                      "end": 14205,
                                      "loc": {
                                        "start": {
                                          "line": 341,
                                          "column": 35
                                        },
                                        "end": {
                                          "line": 341,
                                          "column": 36
                                        }
                                      },
                                      "name": "z"
                                    }
                                  ],
                                  "body": {
                                    "type": "BlockStatement",
                                    "start": 14210,
                                    "end": 14314,
                                    "loc": {
                                      "start": {
                                        "line": 341,
                                        "column": 41
                                      },
                                      "end": {
                                        "line": 343,
                                        "column": 13
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 14228,
                                        "end": 14300,
                                        "loc": {
                                          "start": {
                                            "line": 342,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 342,
                                            "column": 88
                                          }
                                        },
                                        "expression": {
                                          "type": "AssignmentExpression",
                                          "start": 14228,
                                          "end": 14299,
                                          "loc": {
                                            "start": {
                                              "line": 342,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 342,
                                              "column": 87
                                            }
                                          },
                                          "operator": "=",
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 14228,
                                            "end": 14270,
                                            "loc": {
                                              "start": {
                                                "line": 342,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 342,
                                                "column": 58
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 14228,
                                              "end": 14257,
                                              "loc": {
                                                "start": {
                                                  "line": 342,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 342,
                                                  "column": 45
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 14228,
                                                "end": 14248,
                                                "loc": {
                                                  "start": {
                                                    "line": 342,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 342,
                                                    "column": 36
                                                  }
                                                },
                                                "object": {
                                                  "type": "MemberExpression",
                                                  "start": 14228,
                                                  "end": 14239,
                                                  "loc": {
                                                    "start": {
                                                      "line": 342,
                                                      "column": 16
                                                    },
                                                    "end": {
                                                      "line": 342,
                                                      "column": 27
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "ThisExpression",
                                                    "start": 14228,
                                                    "end": 14232,
                                                    "loc": {
                                                      "start": {
                                                        "line": 342,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 342,
                                                        "column": 20
                                                      }
                                                    }
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 14233,
                                                    "end": 14239,
                                                    "loc": {
                                                      "start": {
                                                        "line": 342,
                                                        "column": 21
                                                      },
                                                      "end": {
                                                        "line": 342,
                                                        "column": 27
                                                      }
                                                    },
                                                    "name": "__grid"
                                                  },
                                                  "computed": false
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 14240,
                                                  "end": 14248,
                                                  "loc": {
                                                    "start": {
                                                      "line": 342,
                                                      "column": 28
                                                    },
                                                    "end": {
                                                      "line": 342,
                                                      "column": 36
                                                    }
                                                  },
                                                  "name": "geometry"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 14249,
                                                "end": 14257,
                                                "loc": {
                                                  "start": {
                                                    "line": 342,
                                                    "column": 37
                                                  },
                                                  "end": {
                                                    "line": 342,
                                                    "column": 45
                                                  }
                                                },
                                                "name": "vertices"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "UpdateExpression",
                                              "start": 14258,
                                              "end": 14269,
                                              "loc": {
                                                "start": {
                                                  "line": 342,
                                                  "column": 46
                                                },
                                                "end": {
                                                  "line": 342,
                                                  "column": 57
                                                }
                                              },
                                              "operator": "++",
                                              "prefix": false,
                                              "argument": {
                                                "type": "Identifier",
                                                "start": 14258,
                                                "end": 14267,
                                                "loc": {
                                                  "start": {
                                                    "line": 342,
                                                    "column": 46
                                                  },
                                                  "end": {
                                                    "line": 342,
                                                    "column": 55
                                                  }
                                                },
                                                "name": "gridCount"
                                              }
                                            },
                                            "computed": true
                                          },
                                          "right": {
                                            "type": "NewExpression",
                                            "start": 14273,
                                            "end": 14299,
                                            "loc": {
                                              "start": {
                                                "line": 342,
                                                "column": 61
                                              },
                                              "end": {
                                                "line": 342,
                                                "column": 87
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 14277,
                                              "end": 14290,
                                              "loc": {
                                                "start": {
                                                  "line": 342,
                                                  "column": 65
                                                },
                                                "end": {
                                                  "line": 342,
                                                  "column": 78
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 14277,
                                                "end": 14282,
                                                "loc": {
                                                  "start": {
                                                    "line": 342,
                                                    "column": 65
                                                  },
                                                  "end": {
                                                    "line": 342,
                                                    "column": 70
                                                  }
                                                },
                                                "name": "THREE"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 14283,
                                                "end": 14290,
                                                "loc": {
                                                  "start": {
                                                    "line": 342,
                                                    "column": 71
                                                  },
                                                  "end": {
                                                    "line": 342,
                                                    "column": 78
                                                  }
                                                },
                                                "name": "Vector3"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 14291,
                                                "end": 14292,
                                                "loc": {
                                                  "start": {
                                                    "line": 342,
                                                    "column": 79
                                                  },
                                                  "end": {
                                                    "line": 342,
                                                    "column": 80
                                                  }
                                                },
                                                "name": "x"
                                              },
                                              {
                                                "type": "Identifier",
                                                "start": 14294,
                                                "end": 14295,
                                                "loc": {
                                                  "start": {
                                                    "line": 342,
                                                    "column": 82
                                                  },
                                                  "end": {
                                                    "line": 342,
                                                    "column": 83
                                                  }
                                                },
                                                "name": "y"
                                              },
                                              {
                                                "type": "Identifier",
                                                "start": 14297,
                                                "end": 14298,
                                                "loc": {
                                                  "start": {
                                                    "line": 342,
                                                    "column": 85
                                                  },
                                                  "end": {
                                                    "line": 342,
                                                    "column": 86
                                                  }
                                                },
                                                "name": "z"
                                              }
                                            ]
                                          }
                                        }
                                      }
                                    ]
                                  }
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 14328,
                            "end": 14462,
                            "loc": {
                              "start": {
                                "line": 344,
                                "column": 12
                              },
                              "end": {
                                "line": 346,
                                "column": 14
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 14332,
                                "end": 14461,
                                "loc": {
                                  "start": {
                                    "line": 344,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 346,
                                    "column": 13
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 14332,
                                  "end": 14341,
                                  "loc": {
                                    "start": {
                                      "line": 344,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 344,
                                      "column": 25
                                    }
                                  },
                                  "name": "addToAxis"
                                },
                                "init": {
                                  "type": "ArrowFunctionExpression",
                                  "start": 14344,
                                  "end": 14461,
                                  "loc": {
                                    "start": {
                                      "line": 344,
                                      "column": 28
                                    },
                                    "end": {
                                      "line": 346,
                                      "column": 13
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": false,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 14345,
                                      "end": 14346,
                                      "loc": {
                                        "start": {
                                          "line": 344,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 344,
                                          "column": 30
                                        }
                                      },
                                      "name": "x"
                                    },
                                    {
                                      "type": "Identifier",
                                      "start": 14348,
                                      "end": 14349,
                                      "loc": {
                                        "start": {
                                          "line": 344,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 344,
                                          "column": 33
                                        }
                                      },
                                      "name": "y"
                                    },
                                    {
                                      "type": "Identifier",
                                      "start": 14351,
                                      "end": 14352,
                                      "loc": {
                                        "start": {
                                          "line": 344,
                                          "column": 35
                                        },
                                        "end": {
                                          "line": 344,
                                          "column": 36
                                        }
                                      },
                                      "name": "z"
                                    }
                                  ],
                                  "body": {
                                    "type": "BlockStatement",
                                    "start": 14357,
                                    "end": 14461,
                                    "loc": {
                                      "start": {
                                        "line": 344,
                                        "column": 41
                                      },
                                      "end": {
                                        "line": 346,
                                        "column": 13
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 14375,
                                        "end": 14447,
                                        "loc": {
                                          "start": {
                                            "line": 345,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 345,
                                            "column": 88
                                          }
                                        },
                                        "expression": {
                                          "type": "AssignmentExpression",
                                          "start": 14375,
                                          "end": 14446,
                                          "loc": {
                                            "start": {
                                              "line": 345,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 345,
                                              "column": 87
                                            }
                                          },
                                          "operator": "=",
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 14375,
                                            "end": 14417,
                                            "loc": {
                                              "start": {
                                                "line": 345,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 345,
                                                "column": 58
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 14375,
                                              "end": 14404,
                                              "loc": {
                                                "start": {
                                                  "line": 345,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 345,
                                                  "column": 45
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 14375,
                                                "end": 14395,
                                                "loc": {
                                                  "start": {
                                                    "line": 345,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 345,
                                                    "column": 36
                                                  }
                                                },
                                                "object": {
                                                  "type": "MemberExpression",
                                                  "start": 14375,
                                                  "end": 14386,
                                                  "loc": {
                                                    "start": {
                                                      "line": 345,
                                                      "column": 16
                                                    },
                                                    "end": {
                                                      "line": 345,
                                                      "column": 27
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "ThisExpression",
                                                    "start": 14375,
                                                    "end": 14379,
                                                    "loc": {
                                                      "start": {
                                                        "line": 345,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 345,
                                                        "column": 20
                                                      }
                                                    }
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 14380,
                                                    "end": 14386,
                                                    "loc": {
                                                      "start": {
                                                        "line": 345,
                                                        "column": 21
                                                      },
                                                      "end": {
                                                        "line": 345,
                                                        "column": 27
                                                      }
                                                    },
                                                    "name": "__axis"
                                                  },
                                                  "computed": false
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 14387,
                                                  "end": 14395,
                                                  "loc": {
                                                    "start": {
                                                      "line": 345,
                                                      "column": 28
                                                    },
                                                    "end": {
                                                      "line": 345,
                                                      "column": 36
                                                    }
                                                  },
                                                  "name": "geometry"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 14396,
                                                "end": 14404,
                                                "loc": {
                                                  "start": {
                                                    "line": 345,
                                                    "column": 37
                                                  },
                                                  "end": {
                                                    "line": 345,
                                                    "column": 45
                                                  }
                                                },
                                                "name": "vertices"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "UpdateExpression",
                                              "start": 14405,
                                              "end": 14416,
                                              "loc": {
                                                "start": {
                                                  "line": 345,
                                                  "column": 46
                                                },
                                                "end": {
                                                  "line": 345,
                                                  "column": 57
                                                }
                                              },
                                              "operator": "++",
                                              "prefix": false,
                                              "argument": {
                                                "type": "Identifier",
                                                "start": 14405,
                                                "end": 14414,
                                                "loc": {
                                                  "start": {
                                                    "line": 345,
                                                    "column": 46
                                                  },
                                                  "end": {
                                                    "line": 345,
                                                    "column": 55
                                                  }
                                                },
                                                "name": "axisCount"
                                              }
                                            },
                                            "computed": true
                                          },
                                          "right": {
                                            "type": "NewExpression",
                                            "start": 14420,
                                            "end": 14446,
                                            "loc": {
                                              "start": {
                                                "line": 345,
                                                "column": 61
                                              },
                                              "end": {
                                                "line": 345,
                                                "column": 87
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 14424,
                                              "end": 14437,
                                              "loc": {
                                                "start": {
                                                  "line": 345,
                                                  "column": 65
                                                },
                                                "end": {
                                                  "line": 345,
                                                  "column": 78
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 14424,
                                                "end": 14429,
                                                "loc": {
                                                  "start": {
                                                    "line": 345,
                                                    "column": 65
                                                  },
                                                  "end": {
                                                    "line": 345,
                                                    "column": 70
                                                  }
                                                },
                                                "name": "THREE"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 14430,
                                                "end": 14437,
                                                "loc": {
                                                  "start": {
                                                    "line": 345,
                                                    "column": 71
                                                  },
                                                  "end": {
                                                    "line": 345,
                                                    "column": 78
                                                  }
                                                },
                                                "name": "Vector3"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 14438,
                                                "end": 14439,
                                                "loc": {
                                                  "start": {
                                                    "line": 345,
                                                    "column": 79
                                                  },
                                                  "end": {
                                                    "line": 345,
                                                    "column": 80
                                                  }
                                                },
                                                "name": "x"
                                              },
                                              {
                                                "type": "Identifier",
                                                "start": 14441,
                                                "end": 14442,
                                                "loc": {
                                                  "start": {
                                                    "line": 345,
                                                    "column": 82
                                                  },
                                                  "end": {
                                                    "line": 345,
                                                    "column": 83
                                                  }
                                                },
                                                "name": "y"
                                              },
                                              {
                                                "type": "Identifier",
                                                "start": 14444,
                                                "end": 14445,
                                                "loc": {
                                                  "start": {
                                                    "line": 345,
                                                    "column": 85
                                                  },
                                                  "end": {
                                                    "line": 345,
                                                    "column": 86
                                                  }
                                                },
                                                "name": "z"
                                              }
                                            ]
                                          }
                                        }
                                      }
                                    ]
                                  }
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "ForStatement",
                            "start": 14476,
                            "end": 15518,
                            "loc": {
                              "start": {
                                "line": 348,
                                "column": 12
                              },
                              "end": {
                                "line": 369,
                                "column": 13
                              }
                            },
                            "init": {
                              "type": "VariableDeclaration",
                              "start": 14480,
                              "end": 14489,
                              "loc": {
                                "start": {
                                  "line": 348,
                                  "column": 16
                                },
                                "end": {
                                  "line": 348,
                                  "column": 25
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 14484,
                                  "end": 14489,
                                  "loc": {
                                    "start": {
                                      "line": 348,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 348,
                                      "column": 25
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 14484,
                                    "end": 14485,
                                    "loc": {
                                      "start": {
                                        "line": 348,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 348,
                                        "column": 21
                                      }
                                    },
                                    "name": "i"
                                  },
                                  "init": {
                                    "type": "Literal",
                                    "start": 14488,
                                    "end": 14489,
                                    "loc": {
                                      "start": {
                                        "line": 348,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 348,
                                        "column": 25
                                      }
                                    },
                                    "value": 1,
                                    "rawValue": 1,
                                    "raw": "1"
                                  }
                                }
                              ],
                              "kind": "var"
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 14491,
                              "end": 14509,
                              "loc": {
                                "start": {
                                  "line": 348,
                                  "column": 27
                                },
                                "end": {
                                  "line": 348,
                                  "column": 45
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 14491,
                                "end": 14492,
                                "loc": {
                                  "start": {
                                    "line": 348,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 348,
                                    "column": 28
                                  }
                                },
                                "name": "i"
                              },
                              "operator": "<=",
                              "right": {
                                "type": "MemberExpression",
                                "start": 14496,
                                "end": 14509,
                                "loc": {
                                  "start": {
                                    "line": 348,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 348,
                                    "column": 45
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 14496,
                                  "end": 14500,
                                  "loc": {
                                    "start": {
                                      "line": 348,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 348,
                                      "column": 36
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 14501,
                                  "end": 14509,
                                  "loc": {
                                    "start": {
                                      "line": 348,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 348,
                                      "column": 45
                                    }
                                  },
                                  "name": "gridSize"
                                },
                                "computed": false
                              }
                            },
                            "update": {
                              "type": "UpdateExpression",
                              "start": 14511,
                              "end": 14514,
                              "loc": {
                                "start": {
                                  "line": 348,
                                  "column": 47
                                },
                                "end": {
                                  "line": 348,
                                  "column": 50
                                }
                              },
                              "operator": "++",
                              "prefix": true,
                              "argument": {
                                "type": "Identifier",
                                "start": 14513,
                                "end": 14514,
                                "loc": {
                                  "start": {
                                    "line": 348,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 348,
                                    "column": 50
                                  }
                                },
                                "name": "i"
                              }
                            },
                            "body": {
                              "type": "BlockStatement",
                              "start": 14516,
                              "end": 15518,
                              "loc": {
                                "start": {
                                  "line": 348,
                                  "column": 52
                                },
                                "end": {
                                  "line": 369,
                                  "column": 13
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 14534,
                                  "end": 14575,
                                  "loc": {
                                    "start": {
                                      "line": 349,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 349,
                                      "column": 57
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 14534,
                                    "end": 14574,
                                    "loc": {
                                      "start": {
                                        "line": 349,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 349,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 14534,
                                      "end": 14543,
                                      "loc": {
                                        "start": {
                                          "line": 349,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 349,
                                          "column": 25
                                        }
                                      },
                                      "name": "addToGrid"
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14544,
                                        "end": 14559,
                                        "loc": {
                                          "start": {
                                            "line": 349,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 349,
                                            "column": 41
                                          }
                                        },
                                        "left": {
                                          "type": "UnaryExpression",
                                          "start": 14544,
                                          "end": 14555,
                                          "loc": {
                                            "start": {
                                              "line": 349,
                                              "column": 26
                                            },
                                            "end": {
                                              "line": 349,
                                              "column": 37
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Identifier",
                                            "start": 14545,
                                            "end": 14555,
                                            "loc": {
                                              "start": {
                                                "line": 349,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 349,
                                                "column": 37
                                              }
                                            },
                                            "name": "screenSize"
                                          }
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Literal",
                                          "start": 14558,
                                          "end": 14559,
                                          "loc": {
                                            "start": {
                                              "line": 349,
                                              "column": 40
                                            },
                                            "end": {
                                              "line": 349,
                                              "column": 41
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14562,
                                        "end": 14570,
                                        "loc": {
                                          "start": {
                                            "line": 349,
                                            "column": 44
                                          },
                                          "end": {
                                            "line": 349,
                                            "column": 52
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 14562,
                                          "end": 14566,
                                          "loc": {
                                            "start": {
                                              "line": 349,
                                              "column": 44
                                            },
                                            "end": {
                                              "line": 349,
                                              "column": 48
                                            }
                                          },
                                          "name": "step"
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 14569,
                                          "end": 14570,
                                          "loc": {
                                            "start": {
                                              "line": 349,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 349,
                                              "column": 52
                                            }
                                          },
                                          "name": "i"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 14572,
                                        "end": 14573,
                                        "loc": {
                                          "start": {
                                            "line": 349,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 349,
                                            "column": 55
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 14592,
                                  "end": 14633,
                                  "loc": {
                                    "start": {
                                      "line": 350,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 350,
                                      "column": 57
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 14592,
                                    "end": 14632,
                                    "loc": {
                                      "start": {
                                        "line": 350,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 350,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 14592,
                                      "end": 14601,
                                      "loc": {
                                        "start": {
                                          "line": 350,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 350,
                                          "column": 25
                                        }
                                      },
                                      "name": "addToGrid"
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14603,
                                        "end": 14617,
                                        "loc": {
                                          "start": {
                                            "line": 350,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 350,
                                            "column": 41
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 14603,
                                          "end": 14613,
                                          "loc": {
                                            "start": {
                                              "line": 350,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 350,
                                              "column": 37
                                            }
                                          },
                                          "name": "screenSize"
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Literal",
                                          "start": 14616,
                                          "end": 14617,
                                          "loc": {
                                            "start": {
                                              "line": 350,
                                              "column": 40
                                            },
                                            "end": {
                                              "line": 350,
                                              "column": 41
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14620,
                                        "end": 14628,
                                        "loc": {
                                          "start": {
                                            "line": 350,
                                            "column": 44
                                          },
                                          "end": {
                                            "line": 350,
                                            "column": 52
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 14620,
                                          "end": 14624,
                                          "loc": {
                                            "start": {
                                              "line": 350,
                                              "column": 44
                                            },
                                            "end": {
                                              "line": 350,
                                              "column": 48
                                            }
                                          },
                                          "name": "step"
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 14627,
                                          "end": 14628,
                                          "loc": {
                                            "start": {
                                              "line": 350,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 350,
                                              "column": 52
                                            }
                                          },
                                          "name": "i"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 14630,
                                        "end": 14631,
                                        "loc": {
                                          "start": {
                                            "line": 350,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 350,
                                            "column": 55
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 14650,
                                  "end": 14691,
                                  "loc": {
                                    "start": {
                                      "line": 351,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 351,
                                      "column": 57
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 14650,
                                    "end": 14690,
                                    "loc": {
                                      "start": {
                                        "line": 351,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 351,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 14650,
                                      "end": 14659,
                                      "loc": {
                                        "start": {
                                          "line": 351,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 351,
                                          "column": 25
                                        }
                                      },
                                      "name": "addToGrid"
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14660,
                                        "end": 14675,
                                        "loc": {
                                          "start": {
                                            "line": 351,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 351,
                                            "column": 41
                                          }
                                        },
                                        "left": {
                                          "type": "UnaryExpression",
                                          "start": 14660,
                                          "end": 14671,
                                          "loc": {
                                            "start": {
                                              "line": 351,
                                              "column": 26
                                            },
                                            "end": {
                                              "line": 351,
                                              "column": 37
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Identifier",
                                            "start": 14661,
                                            "end": 14671,
                                            "loc": {
                                              "start": {
                                                "line": 351,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 351,
                                                "column": 37
                                              }
                                            },
                                            "name": "screenSize"
                                          }
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Literal",
                                          "start": 14674,
                                          "end": 14675,
                                          "loc": {
                                            "start": {
                                              "line": 351,
                                              "column": 40
                                            },
                                            "end": {
                                              "line": 351,
                                              "column": 41
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14677,
                                        "end": 14686,
                                        "loc": {
                                          "start": {
                                            "line": 351,
                                            "column": 43
                                          },
                                          "end": {
                                            "line": 351,
                                            "column": 52
                                          }
                                        },
                                        "left": {
                                          "type": "UnaryExpression",
                                          "start": 14677,
                                          "end": 14682,
                                          "loc": {
                                            "start": {
                                              "line": 351,
                                              "column": 43
                                            },
                                            "end": {
                                              "line": 351,
                                              "column": 48
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Identifier",
                                            "start": 14678,
                                            "end": 14682,
                                            "loc": {
                                              "start": {
                                                "line": 351,
                                                "column": 44
                                              },
                                              "end": {
                                                "line": 351,
                                                "column": 48
                                              }
                                            },
                                            "name": "step"
                                          }
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 14685,
                                          "end": 14686,
                                          "loc": {
                                            "start": {
                                              "line": 351,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 351,
                                              "column": 52
                                            }
                                          },
                                          "name": "i"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 14688,
                                        "end": 14689,
                                        "loc": {
                                          "start": {
                                            "line": 351,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 351,
                                            "column": 55
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 14708,
                                  "end": 14749,
                                  "loc": {
                                    "start": {
                                      "line": 352,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 352,
                                      "column": 57
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 14708,
                                    "end": 14748,
                                    "loc": {
                                      "start": {
                                        "line": 352,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 352,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 14708,
                                      "end": 14717,
                                      "loc": {
                                        "start": {
                                          "line": 352,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 352,
                                          "column": 25
                                        }
                                      },
                                      "name": "addToGrid"
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14719,
                                        "end": 14733,
                                        "loc": {
                                          "start": {
                                            "line": 352,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 352,
                                            "column": 41
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 14719,
                                          "end": 14729,
                                          "loc": {
                                            "start": {
                                              "line": 352,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 352,
                                              "column": 37
                                            }
                                          },
                                          "name": "screenSize"
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Literal",
                                          "start": 14732,
                                          "end": 14733,
                                          "loc": {
                                            "start": {
                                              "line": 352,
                                              "column": 40
                                            },
                                            "end": {
                                              "line": 352,
                                              "column": 41
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14735,
                                        "end": 14744,
                                        "loc": {
                                          "start": {
                                            "line": 352,
                                            "column": 43
                                          },
                                          "end": {
                                            "line": 352,
                                            "column": 52
                                          }
                                        },
                                        "left": {
                                          "type": "UnaryExpression",
                                          "start": 14735,
                                          "end": 14740,
                                          "loc": {
                                            "start": {
                                              "line": 352,
                                              "column": 43
                                            },
                                            "end": {
                                              "line": 352,
                                              "column": 48
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Identifier",
                                            "start": 14736,
                                            "end": 14740,
                                            "loc": {
                                              "start": {
                                                "line": 352,
                                                "column": 44
                                              },
                                              "end": {
                                                "line": 352,
                                                "column": 48
                                              }
                                            },
                                            "name": "step"
                                          }
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 14743,
                                          "end": 14744,
                                          "loc": {
                                            "start": {
                                              "line": 352,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 352,
                                              "column": 52
                                            }
                                          },
                                          "name": "i"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 14746,
                                        "end": 14747,
                                        "loc": {
                                          "start": {
                                            "line": 352,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 352,
                                            "column": 55
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 14766,
                                  "end": 14807,
                                  "loc": {
                                    "start": {
                                      "line": 353,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 353,
                                      "column": 57
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 14766,
                                    "end": 14806,
                                    "loc": {
                                      "start": {
                                        "line": 353,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 353,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 14766,
                                      "end": 14775,
                                      "loc": {
                                        "start": {
                                          "line": 353,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 353,
                                          "column": 25
                                        }
                                      },
                                      "name": "addToGrid"
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14777,
                                        "end": 14785,
                                        "loc": {
                                          "start": {
                                            "line": 353,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 353,
                                            "column": 35
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 14777,
                                          "end": 14781,
                                          "loc": {
                                            "start": {
                                              "line": 353,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 353,
                                              "column": 31
                                            }
                                          },
                                          "name": "step"
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 14784,
                                          "end": 14785,
                                          "loc": {
                                            "start": {
                                              "line": 353,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 353,
                                              "column": 35
                                            }
                                          },
                                          "name": "i"
                                        }
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14788,
                                        "end": 14802,
                                        "loc": {
                                          "start": {
                                            "line": 353,
                                            "column": 38
                                          },
                                          "end": {
                                            "line": 353,
                                            "column": 52
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 14788,
                                          "end": 14798,
                                          "loc": {
                                            "start": {
                                              "line": 353,
                                              "column": 38
                                            },
                                            "end": {
                                              "line": 353,
                                              "column": 48
                                            }
                                          },
                                          "name": "screenSize"
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Literal",
                                          "start": 14801,
                                          "end": 14802,
                                          "loc": {
                                            "start": {
                                              "line": 353,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 353,
                                              "column": 52
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 14804,
                                        "end": 14805,
                                        "loc": {
                                          "start": {
                                            "line": 353,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 353,
                                            "column": 55
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 14824,
                                  "end": 14865,
                                  "loc": {
                                    "start": {
                                      "line": 354,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 354,
                                      "column": 57
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 14824,
                                    "end": 14864,
                                    "loc": {
                                      "start": {
                                        "line": 354,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 354,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 14824,
                                      "end": 14833,
                                      "loc": {
                                        "start": {
                                          "line": 354,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 354,
                                          "column": 25
                                        }
                                      },
                                      "name": "addToGrid"
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14835,
                                        "end": 14843,
                                        "loc": {
                                          "start": {
                                            "line": 354,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 354,
                                            "column": 35
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 14835,
                                          "end": 14839,
                                          "loc": {
                                            "start": {
                                              "line": 354,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 354,
                                              "column": 31
                                            }
                                          },
                                          "name": "step"
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 14842,
                                          "end": 14843,
                                          "loc": {
                                            "start": {
                                              "line": 354,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 354,
                                              "column": 35
                                            }
                                          },
                                          "name": "i"
                                        }
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14845,
                                        "end": 14860,
                                        "loc": {
                                          "start": {
                                            "line": 354,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 354,
                                            "column": 52
                                          }
                                        },
                                        "left": {
                                          "type": "UnaryExpression",
                                          "start": 14845,
                                          "end": 14856,
                                          "loc": {
                                            "start": {
                                              "line": 354,
                                              "column": 37
                                            },
                                            "end": {
                                              "line": 354,
                                              "column": 48
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Identifier",
                                            "start": 14846,
                                            "end": 14856,
                                            "loc": {
                                              "start": {
                                                "line": 354,
                                                "column": 38
                                              },
                                              "end": {
                                                "line": 354,
                                                "column": 48
                                              }
                                            },
                                            "name": "screenSize"
                                          }
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Literal",
                                          "start": 14859,
                                          "end": 14860,
                                          "loc": {
                                            "start": {
                                              "line": 354,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 354,
                                              "column": 52
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 14862,
                                        "end": 14863,
                                        "loc": {
                                          "start": {
                                            "line": 354,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 354,
                                            "column": 55
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 14882,
                                  "end": 14923,
                                  "loc": {
                                    "start": {
                                      "line": 355,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 355,
                                      "column": 57
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 14882,
                                    "end": 14922,
                                    "loc": {
                                      "start": {
                                        "line": 355,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 355,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 14882,
                                      "end": 14891,
                                      "loc": {
                                        "start": {
                                          "line": 355,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 355,
                                          "column": 25
                                        }
                                      },
                                      "name": "addToGrid"
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14892,
                                        "end": 14901,
                                        "loc": {
                                          "start": {
                                            "line": 355,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 355,
                                            "column": 35
                                          }
                                        },
                                        "left": {
                                          "type": "UnaryExpression",
                                          "start": 14892,
                                          "end": 14897,
                                          "loc": {
                                            "start": {
                                              "line": 355,
                                              "column": 26
                                            },
                                            "end": {
                                              "line": 355,
                                              "column": 31
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Identifier",
                                            "start": 14893,
                                            "end": 14897,
                                            "loc": {
                                              "start": {
                                                "line": 355,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 355,
                                                "column": 31
                                              }
                                            },
                                            "name": "step"
                                          }
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 14900,
                                          "end": 14901,
                                          "loc": {
                                            "start": {
                                              "line": 355,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 355,
                                              "column": 35
                                            }
                                          },
                                          "name": "i"
                                        }
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14904,
                                        "end": 14918,
                                        "loc": {
                                          "start": {
                                            "line": 355,
                                            "column": 38
                                          },
                                          "end": {
                                            "line": 355,
                                            "column": 52
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 14904,
                                          "end": 14914,
                                          "loc": {
                                            "start": {
                                              "line": 355,
                                              "column": 38
                                            },
                                            "end": {
                                              "line": 355,
                                              "column": 48
                                            }
                                          },
                                          "name": "screenSize"
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Literal",
                                          "start": 14917,
                                          "end": 14918,
                                          "loc": {
                                            "start": {
                                              "line": 355,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 355,
                                              "column": 52
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 14920,
                                        "end": 14921,
                                        "loc": {
                                          "start": {
                                            "line": 355,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 355,
                                            "column": 55
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 14940,
                                  "end": 14981,
                                  "loc": {
                                    "start": {
                                      "line": 356,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 356,
                                      "column": 57
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 14940,
                                    "end": 14980,
                                    "loc": {
                                      "start": {
                                        "line": 356,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 356,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 14940,
                                      "end": 14949,
                                      "loc": {
                                        "start": {
                                          "line": 356,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 356,
                                          "column": 25
                                        }
                                      },
                                      "name": "addToGrid"
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14950,
                                        "end": 14959,
                                        "loc": {
                                          "start": {
                                            "line": 356,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 356,
                                            "column": 35
                                          }
                                        },
                                        "left": {
                                          "type": "UnaryExpression",
                                          "start": 14950,
                                          "end": 14955,
                                          "loc": {
                                            "start": {
                                              "line": 356,
                                              "column": 26
                                            },
                                            "end": {
                                              "line": 356,
                                              "column": 31
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Identifier",
                                            "start": 14951,
                                            "end": 14955,
                                            "loc": {
                                              "start": {
                                                "line": 356,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 356,
                                                "column": 31
                                              }
                                            },
                                            "name": "step"
                                          }
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 14958,
                                          "end": 14959,
                                          "loc": {
                                            "start": {
                                              "line": 356,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 356,
                                              "column": 35
                                            }
                                          },
                                          "name": "i"
                                        }
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14961,
                                        "end": 14976,
                                        "loc": {
                                          "start": {
                                            "line": 356,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 356,
                                            "column": 52
                                          }
                                        },
                                        "left": {
                                          "type": "UnaryExpression",
                                          "start": 14961,
                                          "end": 14972,
                                          "loc": {
                                            "start": {
                                              "line": 356,
                                              "column": 37
                                            },
                                            "end": {
                                              "line": 356,
                                              "column": 48
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Identifier",
                                            "start": 14962,
                                            "end": 14972,
                                            "loc": {
                                              "start": {
                                                "line": 356,
                                                "column": 38
                                              },
                                              "end": {
                                                "line": 356,
                                                "column": 48
                                              }
                                            },
                                            "name": "screenSize"
                                          }
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Literal",
                                          "start": 14975,
                                          "end": 14976,
                                          "loc": {
                                            "start": {
                                              "line": 356,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 356,
                                              "column": 52
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 14978,
                                        "end": 14979,
                                        "loc": {
                                          "start": {
                                            "line": 356,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 356,
                                            "column": 55
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 14998,
                                  "end": 15504,
                                  "loc": {
                                    "start": {
                                      "line": 357,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 368,
                                      "column": 17
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 15002,
                                    "end": 15009,
                                    "loc": {
                                      "start": {
                                        "line": 357,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 357,
                                        "column": 27
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 15002,
                                      "end": 15003,
                                      "loc": {
                                        "start": {
                                          "line": 357,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 357,
                                          "column": 21
                                        }
                                      },
                                      "name": "i"
                                    },
                                    "operator": "===",
                                    "right": {
                                      "type": "Literal",
                                      "start": 15008,
                                      "end": 15009,
                                      "loc": {
                                        "start": {
                                          "line": 357,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 357,
                                          "column": 27
                                        }
                                      },
                                      "value": 1,
                                      "rawValue": 1,
                                      "raw": "1"
                                    }
                                  },
                                  "consequent": {
                                    "type": "BlockStatement",
                                    "start": 15011,
                                    "end": 15504,
                                    "loc": {
                                      "start": {
                                        "line": 357,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 368,
                                        "column": 17
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 15066,
                                        "end": 15099,
                                        "loc": {
                                          "start": {
                                            "line": 359,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 359,
                                            "column": 53
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 15066,
                                          "end": 15098,
                                          "loc": {
                                            "start": {
                                              "line": 359,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 359,
                                              "column": 52
                                            }
                                          },
                                          "callee": {
                                            "type": "Identifier",
                                            "start": 15066,
                                            "end": 15075,
                                            "loc": {
                                              "start": {
                                                "line": 359,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 359,
                                                "column": 29
                                              }
                                            },
                                            "name": "addToGrid",
                                            "leadingComments": null
                                          },
                                          "arguments": [
                                            {
                                              "type": "BinaryExpression",
                                              "start": 15076,
                                              "end": 15091,
                                              "loc": {
                                                "start": {
                                                  "line": 359,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 359,
                                                  "column": 45
                                                }
                                              },
                                              "left": {
                                                "type": "UnaryExpression",
                                                "start": 15076,
                                                "end": 15087,
                                                "loc": {
                                                  "start": {
                                                    "line": 359,
                                                    "column": 30
                                                  },
                                                  "end": {
                                                    "line": 359,
                                                    "column": 41
                                                  }
                                                },
                                                "operator": "-",
                                                "prefix": true,
                                                "argument": {
                                                  "type": "Identifier",
                                                  "start": 15077,
                                                  "end": 15087,
                                                  "loc": {
                                                    "start": {
                                                      "line": 359,
                                                      "column": 31
                                                    },
                                                    "end": {
                                                      "line": 359,
                                                      "column": 41
                                                    }
                                                  },
                                                  "name": "screenSize"
                                                }
                                              },
                                              "operator": "/",
                                              "right": {
                                                "type": "Literal",
                                                "start": 15090,
                                                "end": 15091,
                                                "loc": {
                                                  "start": {
                                                    "line": 359,
                                                    "column": 44
                                                  },
                                                  "end": {
                                                    "line": 359,
                                                    "column": 45
                                                  }
                                                },
                                                "value": 2,
                                                "rawValue": 2,
                                                "raw": "2"
                                              }
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 15093,
                                              "end": 15094,
                                              "loc": {
                                                "start": {
                                                  "line": 359,
                                                  "column": 47
                                                },
                                                "end": {
                                                  "line": 359,
                                                  "column": 48
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 15096,
                                              "end": 15097,
                                              "loc": {
                                                "start": {
                                                  "line": 359,
                                                  "column": 50
                                                },
                                                "end": {
                                                  "line": 359,
                                                  "column": 51
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            }
                                          ],
                                          "leadingComments": null
                                        },
                                        "leadingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": " x \\ axisX",
                                            "start": 15033,
                                            "end": 15045,
                                            "loc": {
                                              "start": {
                                                "line": 358,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 358,
                                                "column": 32
                                              }
                                            },
                                            "range": [
                                              15033,
                                              15045
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 15120,
                                        "end": 15147,
                                        "loc": {
                                          "start": {
                                            "line": 360,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 360,
                                            "column": 47
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 15120,
                                          "end": 15146,
                                          "loc": {
                                            "start": {
                                              "line": 360,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 360,
                                              "column": 46
                                            }
                                          },
                                          "callee": {
                                            "type": "Identifier",
                                            "start": 15120,
                                            "end": 15129,
                                            "loc": {
                                              "start": {
                                                "line": 360,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 360,
                                                "column": 29
                                              }
                                            },
                                            "name": "addToGrid"
                                          },
                                          "arguments": [
                                            {
                                              "type": "UnaryExpression",
                                              "start": 15130,
                                              "end": 15139,
                                              "loc": {
                                                "start": {
                                                  "line": 360,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 360,
                                                  "column": 39
                                                }
                                              },
                                              "operator": "-",
                                              "prefix": true,
                                              "argument": {
                                                "type": "Identifier",
                                                "start": 15131,
                                                "end": 15139,
                                                "loc": {
                                                  "start": {
                                                    "line": 360,
                                                    "column": 31
                                                  },
                                                  "end": {
                                                    "line": 360,
                                                    "column": 39
                                                  }
                                                },
                                                "name": "axisSize"
                                              }
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 15141,
                                              "end": 15142,
                                              "loc": {
                                                "start": {
                                                  "line": 360,
                                                  "column": 41
                                                },
                                                "end": {
                                                  "line": 360,
                                                  "column": 42
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 15144,
                                              "end": 15145,
                                              "loc": {
                                                "start": {
                                                  "line": 360,
                                                  "column": 44
                                                },
                                                "end": {
                                                  "line": 360,
                                                  "column": 45
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            }
                                          ]
                                        }
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 15168,
                                        "end": 15201,
                                        "loc": {
                                          "start": {
                                            "line": 361,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 361,
                                            "column": 53
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 15168,
                                          "end": 15200,
                                          "loc": {
                                            "start": {
                                              "line": 361,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 361,
                                              "column": 52
                                            }
                                          },
                                          "callee": {
                                            "type": "Identifier",
                                            "start": 15168,
                                            "end": 15177,
                                            "loc": {
                                              "start": {
                                                "line": 361,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 361,
                                                "column": 29
                                              }
                                            },
                                            "name": "addToGrid"
                                          },
                                          "arguments": [
                                            {
                                              "type": "BinaryExpression",
                                              "start": 15179,
                                              "end": 15193,
                                              "loc": {
                                                "start": {
                                                  "line": 361,
                                                  "column": 31
                                                },
                                                "end": {
                                                  "line": 361,
                                                  "column": 45
                                                }
                                              },
                                              "left": {
                                                "type": "Identifier",
                                                "start": 15179,
                                                "end": 15189,
                                                "loc": {
                                                  "start": {
                                                    "line": 361,
                                                    "column": 31
                                                  },
                                                  "end": {
                                                    "line": 361,
                                                    "column": 41
                                                  }
                                                },
                                                "name": "screenSize"
                                              },
                                              "operator": "/",
                                              "right": {
                                                "type": "Literal",
                                                "start": 15192,
                                                "end": 15193,
                                                "loc": {
                                                  "start": {
                                                    "line": 361,
                                                    "column": 44
                                                  },
                                                  "end": {
                                                    "line": 361,
                                                    "column": 45
                                                  }
                                                },
                                                "value": 2,
                                                "rawValue": 2,
                                                "raw": "2"
                                              }
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 15195,
                                              "end": 15196,
                                              "loc": {
                                                "start": {
                                                  "line": 361,
                                                  "column": 47
                                                },
                                                "end": {
                                                  "line": 361,
                                                  "column": 48
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 15198,
                                              "end": 15199,
                                              "loc": {
                                                "start": {
                                                  "line": 361,
                                                  "column": 50
                                                },
                                                "end": {
                                                  "line": 361,
                                                  "column": 51
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            }
                                          ]
                                        }
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 15222,
                                        "end": 15249,
                                        "loc": {
                                          "start": {
                                            "line": 362,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 362,
                                            "column": 47
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 15222,
                                          "end": 15248,
                                          "loc": {
                                            "start": {
                                              "line": 362,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 362,
                                              "column": 46
                                            }
                                          },
                                          "callee": {
                                            "type": "Identifier",
                                            "start": 15222,
                                            "end": 15231,
                                            "loc": {
                                              "start": {
                                                "line": 362,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 362,
                                                "column": 29
                                              }
                                            },
                                            "name": "addToGrid"
                                          },
                                          "arguments": [
                                            {
                                              "type": "Identifier",
                                              "start": 15233,
                                              "end": 15241,
                                              "loc": {
                                                "start": {
                                                  "line": 362,
                                                  "column": 31
                                                },
                                                "end": {
                                                  "line": 362,
                                                  "column": 39
                                                }
                                              },
                                              "name": "axisSize"
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 15243,
                                              "end": 15244,
                                              "loc": {
                                                "start": {
                                                  "line": 362,
                                                  "column": 41
                                                },
                                                "end": {
                                                  "line": 362,
                                                  "column": 42
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 15246,
                                              "end": 15247,
                                              "loc": {
                                                "start": {
                                                  "line": 362,
                                                  "column": 44
                                                },
                                                "end": {
                                                  "line": 362,
                                                  "column": 45
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            }
                                          ]
                                        },
                                        "trailingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": " y \\ axisY",
                                            "start": 15270,
                                            "end": 15282,
                                            "loc": {
                                              "start": {
                                                "line": 363,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 363,
                                                "column": 32
                                              }
                                            },
                                            "range": [
                                              15270,
                                              15282
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 15303,
                                        "end": 15336,
                                        "loc": {
                                          "start": {
                                            "line": 364,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 364,
                                            "column": 53
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 15303,
                                          "end": 15335,
                                          "loc": {
                                            "start": {
                                              "line": 364,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 364,
                                              "column": 52
                                            }
                                          },
                                          "callee": {
                                            "type": "Identifier",
                                            "start": 15303,
                                            "end": 15312,
                                            "loc": {
                                              "start": {
                                                "line": 364,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 364,
                                                "column": 29
                                              }
                                            },
                                            "name": "addToGrid",
                                            "leadingComments": null
                                          },
                                          "arguments": [
                                            {
                                              "type": "Literal",
                                              "start": 15313,
                                              "end": 15314,
                                              "loc": {
                                                "start": {
                                                  "line": 364,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 364,
                                                  "column": 31
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            },
                                            {
                                              "type": "BinaryExpression",
                                              "start": 15317,
                                              "end": 15331,
                                              "loc": {
                                                "start": {
                                                  "line": 364,
                                                  "column": 34
                                                },
                                                "end": {
                                                  "line": 364,
                                                  "column": 48
                                                }
                                              },
                                              "left": {
                                                "type": "Identifier",
                                                "start": 15317,
                                                "end": 15327,
                                                "loc": {
                                                  "start": {
                                                    "line": 364,
                                                    "column": 34
                                                  },
                                                  "end": {
                                                    "line": 364,
                                                    "column": 44
                                                  }
                                                },
                                                "name": "screenSize"
                                              },
                                              "operator": "/",
                                              "right": {
                                                "type": "Literal",
                                                "start": 15330,
                                                "end": 15331,
                                                "loc": {
                                                  "start": {
                                                    "line": 364,
                                                    "column": 47
                                                  },
                                                  "end": {
                                                    "line": 364,
                                                    "column": 48
                                                  }
                                                },
                                                "value": 2,
                                                "rawValue": 2,
                                                "raw": "2"
                                              }
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 15333,
                                              "end": 15334,
                                              "loc": {
                                                "start": {
                                                  "line": 364,
                                                  "column": 50
                                                },
                                                "end": {
                                                  "line": 364,
                                                  "column": 51
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            }
                                          ],
                                          "leadingComments": null
                                        },
                                        "leadingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": " y \\ axisY",
                                            "start": 15270,
                                            "end": 15282,
                                            "loc": {
                                              "start": {
                                                "line": 363,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 363,
                                                "column": 32
                                              }
                                            },
                                            "range": [
                                              15270,
                                              15282
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 15357,
                                        "end": 15384,
                                        "loc": {
                                          "start": {
                                            "line": 365,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 365,
                                            "column": 47
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 15357,
                                          "end": 15383,
                                          "loc": {
                                            "start": {
                                              "line": 365,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 365,
                                              "column": 46
                                            }
                                          },
                                          "callee": {
                                            "type": "Identifier",
                                            "start": 15357,
                                            "end": 15366,
                                            "loc": {
                                              "start": {
                                                "line": 365,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 365,
                                                "column": 29
                                              }
                                            },
                                            "name": "addToGrid"
                                          },
                                          "arguments": [
                                            {
                                              "type": "Literal",
                                              "start": 15367,
                                              "end": 15368,
                                              "loc": {
                                                "start": {
                                                  "line": 365,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 365,
                                                  "column": 31
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            },
                                            {
                                              "type": "Identifier",
                                              "start": 15371,
                                              "end": 15379,
                                              "loc": {
                                                "start": {
                                                  "line": 365,
                                                  "column": 34
                                                },
                                                "end": {
                                                  "line": 365,
                                                  "column": 42
                                                }
                                              },
                                              "name": "axisSize"
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 15381,
                                              "end": 15382,
                                              "loc": {
                                                "start": {
                                                  "line": 365,
                                                  "column": 44
                                                },
                                                "end": {
                                                  "line": 365,
                                                  "column": 45
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            }
                                          ]
                                        }
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 15405,
                                        "end": 15438,
                                        "loc": {
                                          "start": {
                                            "line": 366,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 366,
                                            "column": 53
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 15405,
                                          "end": 15437,
                                          "loc": {
                                            "start": {
                                              "line": 366,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 366,
                                              "column": 52
                                            }
                                          },
                                          "callee": {
                                            "type": "Identifier",
                                            "start": 15405,
                                            "end": 15414,
                                            "loc": {
                                              "start": {
                                                "line": 366,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 366,
                                                "column": 29
                                              }
                                            },
                                            "name": "addToGrid"
                                          },
                                          "arguments": [
                                            {
                                              "type": "Literal",
                                              "start": 15415,
                                              "end": 15416,
                                              "loc": {
                                                "start": {
                                                  "line": 366,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 366,
                                                  "column": 31
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            },
                                            {
                                              "type": "BinaryExpression",
                                              "start": 15418,
                                              "end": 15433,
                                              "loc": {
                                                "start": {
                                                  "line": 366,
                                                  "column": 33
                                                },
                                                "end": {
                                                  "line": 366,
                                                  "column": 48
                                                }
                                              },
                                              "left": {
                                                "type": "UnaryExpression",
                                                "start": 15418,
                                                "end": 15429,
                                                "loc": {
                                                  "start": {
                                                    "line": 366,
                                                    "column": 33
                                                  },
                                                  "end": {
                                                    "line": 366,
                                                    "column": 44
                                                  }
                                                },
                                                "operator": "-",
                                                "prefix": true,
                                                "argument": {
                                                  "type": "Identifier",
                                                  "start": 15419,
                                                  "end": 15429,
                                                  "loc": {
                                                    "start": {
                                                      "line": 366,
                                                      "column": 34
                                                    },
                                                    "end": {
                                                      "line": 366,
                                                      "column": 44
                                                    }
                                                  },
                                                  "name": "screenSize"
                                                }
                                              },
                                              "operator": "/",
                                              "right": {
                                                "type": "Literal",
                                                "start": 15432,
                                                "end": 15433,
                                                "loc": {
                                                  "start": {
                                                    "line": 366,
                                                    "column": 47
                                                  },
                                                  "end": {
                                                    "line": 366,
                                                    "column": 48
                                                  }
                                                },
                                                "value": 2,
                                                "rawValue": 2,
                                                "raw": "2"
                                              }
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 15435,
                                              "end": 15436,
                                              "loc": {
                                                "start": {
                                                  "line": 366,
                                                  "column": 50
                                                },
                                                "end": {
                                                  "line": 366,
                                                  "column": 51
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            }
                                          ]
                                        }
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 15459,
                                        "end": 15486,
                                        "loc": {
                                          "start": {
                                            "line": 367,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 367,
                                            "column": 47
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 15459,
                                          "end": 15485,
                                          "loc": {
                                            "start": {
                                              "line": 367,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 367,
                                              "column": 46
                                            }
                                          },
                                          "callee": {
                                            "type": "Identifier",
                                            "start": 15459,
                                            "end": 15468,
                                            "loc": {
                                              "start": {
                                                "line": 367,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 367,
                                                "column": 29
                                              }
                                            },
                                            "name": "addToGrid"
                                          },
                                          "arguments": [
                                            {
                                              "type": "Literal",
                                              "start": 15469,
                                              "end": 15470,
                                              "loc": {
                                                "start": {
                                                  "line": 367,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 367,
                                                  "column": 31
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            },
                                            {
                                              "type": "UnaryExpression",
                                              "start": 15472,
                                              "end": 15481,
                                              "loc": {
                                                "start": {
                                                  "line": 367,
                                                  "column": 33
                                                },
                                                "end": {
                                                  "line": 367,
                                                  "column": 42
                                                }
                                              },
                                              "operator": "-",
                                              "prefix": true,
                                              "argument": {
                                                "type": "Identifier",
                                                "start": 15473,
                                                "end": 15481,
                                                "loc": {
                                                  "start": {
                                                    "line": 367,
                                                    "column": 34
                                                  },
                                                  "end": {
                                                    "line": 367,
                                                    "column": 42
                                                  }
                                                },
                                                "name": "axisSize"
                                              }
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 15483,
                                              "end": 15484,
                                              "loc": {
                                                "start": {
                                                  "line": 367,
                                                  "column": 44
                                                },
                                                "end": {
                                                  "line": 367,
                                                  "column": 45
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  },
                                  "alternate": null
                                }
                              ],
                              "trailingComments": null
                            },
                            "trailingComments": [
                              {
                                "type": "CommentLine",
                                "value": " axis",
                                "start": 15532,
                                "end": 15539,
                                "loc": {
                                  "start": {
                                    "line": 371,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 371,
                                    "column": 19
                                  }
                                },
                                "range": [
                                  15532,
                                  15539
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 15552,
                            "end": 15579,
                            "loc": {
                              "start": {
                                "line": 372,
                                "column": 12
                              },
                              "end": {
                                "line": 372,
                                "column": 39
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 15552,
                              "end": 15578,
                              "loc": {
                                "start": {
                                  "line": 372,
                                  "column": 12
                                },
                                "end": {
                                  "line": 372,
                                  "column": 38
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 15552,
                                "end": 15561,
                                "loc": {
                                  "start": {
                                    "line": 372,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 372,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis",
                                "leadingComments": null
                              },
                              "arguments": [
                                {
                                  "type": "UnaryExpression",
                                  "start": 15562,
                                  "end": 15571,
                                  "loc": {
                                    "start": {
                                      "line": 372,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 372,
                                      "column": 31
                                    }
                                  },
                                  "operator": "-",
                                  "prefix": true,
                                  "argument": {
                                    "type": "Identifier",
                                    "start": 15563,
                                    "end": 15571,
                                    "loc": {
                                      "start": {
                                        "line": 372,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 372,
                                        "column": 31
                                      }
                                    },
                                    "name": "axisSize"
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 15573,
                                  "end": 15574,
                                  "loc": {
                                    "start": {
                                      "line": 372,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 372,
                                      "column": 34
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Literal",
                                  "start": 15576,
                                  "end": 15577,
                                  "loc": {
                                    "start": {
                                      "line": 372,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 372,
                                      "column": 37
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ],
                              "leadingComments": null
                            },
                            "leadingComments": [
                              {
                                "type": "CommentLine",
                                "value": " axis",
                                "start": 15532,
                                "end": 15539,
                                "loc": {
                                  "start": {
                                    "line": 371,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 371,
                                    "column": 19
                                  }
                                },
                                "range": [
                                  15532,
                                  15539
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 15592,
                            "end": 15619,
                            "loc": {
                              "start": {
                                "line": 373,
                                "column": 12
                              },
                              "end": {
                                "line": 373,
                                "column": 39
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 15592,
                              "end": 15618,
                              "loc": {
                                "start": {
                                  "line": 373,
                                  "column": 12
                                },
                                "end": {
                                  "line": 373,
                                  "column": 38
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 15592,
                                "end": 15601,
                                "loc": {
                                  "start": {
                                    "line": 373,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 373,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 15603,
                                  "end": 15611,
                                  "loc": {
                                    "start": {
                                      "line": 373,
                                      "column": 23
                                    },
                                    "end": {
                                      "line": 373,
                                      "column": 31
                                    }
                                  },
                                  "name": "axisSize"
                                },
                                {
                                  "type": "Literal",
                                  "start": 15613,
                                  "end": 15614,
                                  "loc": {
                                    "start": {
                                      "line": 373,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 373,
                                      "column": 34
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Literal",
                                  "start": 15616,
                                  "end": 15617,
                                  "loc": {
                                    "start": {
                                      "line": 373,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 373,
                                      "column": 37
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 15632,
                            "end": 15659,
                            "loc": {
                              "start": {
                                "line": 374,
                                "column": 12
                              },
                              "end": {
                                "line": 374,
                                "column": 39
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 15632,
                              "end": 15658,
                              "loc": {
                                "start": {
                                  "line": 374,
                                  "column": 12
                                },
                                "end": {
                                  "line": 374,
                                  "column": 38
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 15632,
                                "end": 15641,
                                "loc": {
                                  "start": {
                                    "line": 374,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 374,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 15642,
                                  "end": 15643,
                                  "loc": {
                                    "start": {
                                      "line": 374,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 374,
                                      "column": 23
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "UnaryExpression",
                                  "start": 15645,
                                  "end": 15654,
                                  "loc": {
                                    "start": {
                                      "line": 374,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 374,
                                      "column": 34
                                    }
                                  },
                                  "operator": "-",
                                  "prefix": true,
                                  "argument": {
                                    "type": "Identifier",
                                    "start": 15646,
                                    "end": 15654,
                                    "loc": {
                                      "start": {
                                        "line": 374,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 374,
                                        "column": 34
                                      }
                                    },
                                    "name": "axisSize"
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 15656,
                                  "end": 15657,
                                  "loc": {
                                    "start": {
                                      "line": 374,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 374,
                                      "column": 37
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 15672,
                            "end": 15699,
                            "loc": {
                              "start": {
                                "line": 375,
                                "column": 12
                              },
                              "end": {
                                "line": 375,
                                "column": 39
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 15672,
                              "end": 15698,
                              "loc": {
                                "start": {
                                  "line": 375,
                                  "column": 12
                                },
                                "end": {
                                  "line": 375,
                                  "column": 38
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 15672,
                                "end": 15681,
                                "loc": {
                                  "start": {
                                    "line": 375,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 375,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 15682,
                                  "end": 15683,
                                  "loc": {
                                    "start": {
                                      "line": 375,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 375,
                                      "column": 23
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 15686,
                                  "end": 15694,
                                  "loc": {
                                    "start": {
                                      "line": 375,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 375,
                                      "column": 34
                                    }
                                  },
                                  "name": "axisSize"
                                },
                                {
                                  "type": "Literal",
                                  "start": 15696,
                                  "end": 15697,
                                  "loc": {
                                    "start": {
                                      "line": 375,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 375,
                                      "column": 37
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            },
                            "trailingComments": [
                              {
                                "type": "CommentLine",
                                "value": " arrows",
                                "start": 15712,
                                "end": 15721,
                                "loc": {
                                  "start": {
                                    "line": 376,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 376,
                                    "column": 21
                                  }
                                },
                                "range": [
                                  15712,
                                  15721
                                ]
                              }
                            ]
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 15734,
                            "end": 15767,
                            "loc": {
                              "start": {
                                "line": 377,
                                "column": 12
                              },
                              "end": {
                                "line": 377,
                                "column": 45
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 15738,
                                "end": 15766,
                                "loc": {
                                  "start": {
                                    "line": 377,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 377,
                                    "column": 44
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 15738,
                                  "end": 15748,
                                  "loc": {
                                    "start": {
                                      "line": 377,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 377,
                                      "column": 26
                                    }
                                  },
                                  "name": "arrowWidth",
                                  "leadingComments": null
                                },
                                "init": {
                                  "type": "BinaryExpression",
                                  "start": 15751,
                                  "end": 15766,
                                  "loc": {
                                    "start": {
                                      "line": 377,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 377,
                                      "column": 44
                                    }
                                  },
                                  "left": {
                                    "type": "MemberExpression",
                                    "start": 15751,
                                    "end": 15764,
                                    "loc": {
                                      "start": {
                                        "line": 377,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 377,
                                        "column": 42
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 15751,
                                      "end": 15755,
                                      "loc": {
                                        "start": {
                                          "line": 377,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 377,
                                          "column": 33
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 15756,
                                      "end": 15764,
                                      "loc": {
                                        "start": {
                                          "line": 377,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 377,
                                          "column": 42
                                        }
                                      },
                                      "name": "gridStep"
                                    },
                                    "computed": false
                                  },
                                  "operator": "/",
                                  "right": {
                                    "type": "Literal",
                                    "start": 15765,
                                    "end": 15766,
                                    "loc": {
                                      "start": {
                                        "line": 377,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 377,
                                        "column": 44
                                      }
                                    },
                                    "value": 4,
                                    "rawValue": 4,
                                    "raw": "4"
                                  }
                                },
                                "leadingComments": null
                              }
                            ],
                            "kind": "var",
                            "leadingComments": [
                              {
                                "type": "CommentLine",
                                "value": " arrows",
                                "start": 15712,
                                "end": 15721,
                                "loc": {
                                  "start": {
                                    "line": 376,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 376,
                                    "column": 21
                                  }
                                },
                                "range": [
                                  15712,
                                  15721
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 15780,
                            "end": 15833,
                            "loc": {
                              "start": {
                                "line": 378,
                                "column": 12
                              },
                              "end": {
                                "line": 378,
                                "column": 65
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 15780,
                              "end": 15832,
                              "loc": {
                                "start": {
                                  "line": 378,
                                  "column": 12
                                },
                                "end": {
                                  "line": 378,
                                  "column": 64
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 15780,
                                "end": 15789,
                                "loc": {
                                  "start": {
                                    "line": 378,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 378,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 15790,
                                  "end": 15814,
                                  "loc": {
                                    "start": {
                                      "line": 378,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 378,
                                      "column": 46
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 15790,
                                    "end": 15798,
                                    "loc": {
                                      "start": {
                                        "line": 378,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 378,
                                        "column": 30
                                      }
                                    },
                                    "name": "axisSize"
                                  },
                                  "operator": "-",
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 15801,
                                    "end": 15814,
                                    "loc": {
                                      "start": {
                                        "line": 378,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 378,
                                        "column": 46
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 15801,
                                      "end": 15805,
                                      "loc": {
                                        "start": {
                                          "line": 378,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 378,
                                          "column": 37
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 15806,
                                      "end": 15814,
                                      "loc": {
                                        "start": {
                                          "line": 378,
                                          "column": 38
                                        },
                                        "end": {
                                          "line": 378,
                                          "column": 46
                                        }
                                      },
                                      "name": "gridStep"
                                    },
                                    "computed": false
                                  }
                                },
                                {
                                  "type": "UnaryExpression",
                                  "start": 15816,
                                  "end": 15828,
                                  "loc": {
                                    "start": {
                                      "line": 378,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 378,
                                      "column": 60
                                    }
                                  },
                                  "operator": "-",
                                  "prefix": true,
                                  "argument": {
                                    "type": "Identifier",
                                    "start": 15818,
                                    "end": 15828,
                                    "loc": {
                                      "start": {
                                        "line": 378,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 378,
                                        "column": 60
                                      }
                                    },
                                    "name": "arrowWidth"
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 15830,
                                  "end": 15831,
                                  "loc": {
                                    "start": {
                                      "line": 378,
                                      "column": 62
                                    },
                                    "end": {
                                      "line": 378,
                                      "column": 63
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 15846,
                            "end": 15872,
                            "loc": {
                              "start": {
                                "line": 379,
                                "column": 12
                              },
                              "end": {
                                "line": 379,
                                "column": 38
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 15846,
                              "end": 15871,
                              "loc": {
                                "start": {
                                  "line": 379,
                                  "column": 12
                                },
                                "end": {
                                  "line": 379,
                                  "column": 37
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 15846,
                                "end": 15855,
                                "loc": {
                                  "start": {
                                    "line": 379,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 379,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 15856,
                                  "end": 15864,
                                  "loc": {
                                    "start": {
                                      "line": 379,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 379,
                                      "column": 30
                                    }
                                  },
                                  "name": "axisSize"
                                },
                                {
                                  "type": "Literal",
                                  "start": 15866,
                                  "end": 15867,
                                  "loc": {
                                    "start": {
                                      "line": 379,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 379,
                                      "column": 33
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Literal",
                                  "start": 15869,
                                  "end": 15870,
                                  "loc": {
                                    "start": {
                                      "line": 379,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 379,
                                      "column": 36
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 15885,
                            "end": 15938,
                            "loc": {
                              "start": {
                                "line": 380,
                                "column": 12
                              },
                              "end": {
                                "line": 380,
                                "column": 65
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 15885,
                              "end": 15937,
                              "loc": {
                                "start": {
                                  "line": 380,
                                  "column": 12
                                },
                                "end": {
                                  "line": 380,
                                  "column": 64
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 15885,
                                "end": 15894,
                                "loc": {
                                  "start": {
                                    "line": 380,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 380,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 15895,
                                  "end": 15919,
                                  "loc": {
                                    "start": {
                                      "line": 380,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 380,
                                      "column": 46
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 15895,
                                    "end": 15903,
                                    "loc": {
                                      "start": {
                                        "line": 380,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 380,
                                        "column": 30
                                      }
                                    },
                                    "name": "axisSize"
                                  },
                                  "operator": "-",
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 15906,
                                    "end": 15919,
                                    "loc": {
                                      "start": {
                                        "line": 380,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 380,
                                        "column": 46
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 15906,
                                      "end": 15910,
                                      "loc": {
                                        "start": {
                                          "line": 380,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 380,
                                          "column": 37
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 15911,
                                      "end": 15919,
                                      "loc": {
                                        "start": {
                                          "line": 380,
                                          "column": 38
                                        },
                                        "end": {
                                          "line": 380,
                                          "column": 46
                                        }
                                      },
                                      "name": "gridStep"
                                    },
                                    "computed": false
                                  }
                                },
                                {
                                  "type": "UnaryExpression",
                                  "start": 15921,
                                  "end": 15933,
                                  "loc": {
                                    "start": {
                                      "line": 380,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 380,
                                      "column": 60
                                    }
                                  },
                                  "operator": "+",
                                  "prefix": true,
                                  "argument": {
                                    "type": "Identifier",
                                    "start": 15923,
                                    "end": 15933,
                                    "loc": {
                                      "start": {
                                        "line": 380,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 380,
                                        "column": 60
                                      }
                                    },
                                    "name": "arrowWidth"
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 15935,
                                  "end": 15936,
                                  "loc": {
                                    "start": {
                                      "line": 380,
                                      "column": 62
                                    },
                                    "end": {
                                      "line": 380,
                                      "column": 63
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 15951,
                            "end": 15977,
                            "loc": {
                              "start": {
                                "line": 381,
                                "column": 12
                              },
                              "end": {
                                "line": 381,
                                "column": 38
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 15951,
                              "end": 15976,
                              "loc": {
                                "start": {
                                  "line": 381,
                                  "column": 12
                                },
                                "end": {
                                  "line": 381,
                                  "column": 37
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 15951,
                                "end": 15960,
                                "loc": {
                                  "start": {
                                    "line": 381,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 381,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 15961,
                                  "end": 15969,
                                  "loc": {
                                    "start": {
                                      "line": 381,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 381,
                                      "column": 30
                                    }
                                  },
                                  "name": "axisSize"
                                },
                                {
                                  "type": "Literal",
                                  "start": 15971,
                                  "end": 15972,
                                  "loc": {
                                    "start": {
                                      "line": 381,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 381,
                                      "column": 33
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Literal",
                                  "start": 15974,
                                  "end": 15975,
                                  "loc": {
                                    "start": {
                                      "line": 381,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 381,
                                      "column": 36
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 15990,
                            "end": 16042,
                            "loc": {
                              "start": {
                                "line": 382,
                                "column": 12
                              },
                              "end": {
                                "line": 382,
                                "column": 64
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 15990,
                              "end": 16041,
                              "loc": {
                                "start": {
                                  "line": 382,
                                  "column": 12
                                },
                                "end": {
                                  "line": 382,
                                  "column": 63
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 15990,
                                "end": 15999,
                                "loc": {
                                  "start": {
                                    "line": 382,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 382,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "UnaryExpression",
                                  "start": 16000,
                                  "end": 16011,
                                  "loc": {
                                    "start": {
                                      "line": 382,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 382,
                                      "column": 33
                                    }
                                  },
                                  "operator": "-",
                                  "prefix": true,
                                  "argument": {
                                    "type": "Identifier",
                                    "start": 16001,
                                    "end": 16011,
                                    "loc": {
                                      "start": {
                                        "line": 382,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 382,
                                        "column": 33
                                      }
                                    },
                                    "name": "arrowWidth"
                                  }
                                },
                                {
                                  "type": "BinaryExpression",
                                  "start": 16013,
                                  "end": 16037,
                                  "loc": {
                                    "start": {
                                      "line": 382,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 382,
                                      "column": 59
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 16013,
                                    "end": 16021,
                                    "loc": {
                                      "start": {
                                        "line": 382,
                                        "column": 35
                                      },
                                      "end": {
                                        "line": 382,
                                        "column": 43
                                      }
                                    },
                                    "name": "axisSize"
                                  },
                                  "operator": "-",
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 16024,
                                    "end": 16037,
                                    "loc": {
                                      "start": {
                                        "line": 382,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 382,
                                        "column": 59
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 16024,
                                      "end": 16028,
                                      "loc": {
                                        "start": {
                                          "line": 382,
                                          "column": 46
                                        },
                                        "end": {
                                          "line": 382,
                                          "column": 50
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 16029,
                                      "end": 16037,
                                      "loc": {
                                        "start": {
                                          "line": 382,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 382,
                                          "column": 59
                                        }
                                      },
                                      "name": "gridStep"
                                    },
                                    "computed": false
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 16039,
                                  "end": 16040,
                                  "loc": {
                                    "start": {
                                      "line": 382,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 382,
                                      "column": 62
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16055,
                            "end": 16081,
                            "loc": {
                              "start": {
                                "line": 383,
                                "column": 12
                              },
                              "end": {
                                "line": 383,
                                "column": 38
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16055,
                              "end": 16080,
                              "loc": {
                                "start": {
                                  "line": 383,
                                  "column": 12
                                },
                                "end": {
                                  "line": 383,
                                  "column": 37
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16055,
                                "end": 16064,
                                "loc": {
                                  "start": {
                                    "line": 383,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 383,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 16065,
                                  "end": 16066,
                                  "loc": {
                                    "start": {
                                      "line": 383,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 383,
                                      "column": 23
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 16068,
                                  "end": 16076,
                                  "loc": {
                                    "start": {
                                      "line": 383,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 383,
                                      "column": 33
                                    }
                                  },
                                  "name": "axisSize"
                                },
                                {
                                  "type": "Literal",
                                  "start": 16078,
                                  "end": 16079,
                                  "loc": {
                                    "start": {
                                      "line": 383,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 383,
                                      "column": 36
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16094,
                            "end": 16146,
                            "loc": {
                              "start": {
                                "line": 384,
                                "column": 12
                              },
                              "end": {
                                "line": 384,
                                "column": 64
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16094,
                              "end": 16145,
                              "loc": {
                                "start": {
                                  "line": 384,
                                  "column": 12
                                },
                                "end": {
                                  "line": 384,
                                  "column": 63
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16094,
                                "end": 16103,
                                "loc": {
                                  "start": {
                                    "line": 384,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 384,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 16105,
                                  "end": 16115,
                                  "loc": {
                                    "start": {
                                      "line": 384,
                                      "column": 23
                                    },
                                    "end": {
                                      "line": 384,
                                      "column": 33
                                    }
                                  },
                                  "name": "arrowWidth"
                                },
                                {
                                  "type": "BinaryExpression",
                                  "start": 16117,
                                  "end": 16141,
                                  "loc": {
                                    "start": {
                                      "line": 384,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 384,
                                      "column": 59
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 16117,
                                    "end": 16125,
                                    "loc": {
                                      "start": {
                                        "line": 384,
                                        "column": 35
                                      },
                                      "end": {
                                        "line": 384,
                                        "column": 43
                                      }
                                    },
                                    "name": "axisSize"
                                  },
                                  "operator": "-",
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 16128,
                                    "end": 16141,
                                    "loc": {
                                      "start": {
                                        "line": 384,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 384,
                                        "column": 59
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 16128,
                                      "end": 16132,
                                      "loc": {
                                        "start": {
                                          "line": 384,
                                          "column": 46
                                        },
                                        "end": {
                                          "line": 384,
                                          "column": 50
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 16133,
                                      "end": 16141,
                                      "loc": {
                                        "start": {
                                          "line": 384,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 384,
                                          "column": 59
                                        }
                                      },
                                      "name": "gridStep"
                                    },
                                    "computed": false
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 16143,
                                  "end": 16144,
                                  "loc": {
                                    "start": {
                                      "line": 384,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 384,
                                      "column": 62
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16159,
                            "end": 16185,
                            "loc": {
                              "start": {
                                "line": 385,
                                "column": 12
                              },
                              "end": {
                                "line": 385,
                                "column": 38
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16159,
                              "end": 16184,
                              "loc": {
                                "start": {
                                  "line": 385,
                                  "column": 12
                                },
                                "end": {
                                  "line": 385,
                                  "column": 37
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16159,
                                "end": 16168,
                                "loc": {
                                  "start": {
                                    "line": 385,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 385,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 16169,
                                  "end": 16170,
                                  "loc": {
                                    "start": {
                                      "line": 385,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 385,
                                      "column": 23
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 16172,
                                  "end": 16180,
                                  "loc": {
                                    "start": {
                                      "line": 385,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 385,
                                      "column": 33
                                    }
                                  },
                                  "name": "axisSize"
                                },
                                {
                                  "type": "Literal",
                                  "start": 16182,
                                  "end": 16183,
                                  "loc": {
                                    "start": {
                                      "line": 385,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 385,
                                      "column": 36
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            },
                            "trailingComments": [
                              {
                                "type": "CommentLine",
                                "value": " symbols \"x\", \"y\"",
                                "start": 16198,
                                "end": 16217,
                                "loc": {
                                  "start": {
                                    "line": 386,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 386,
                                    "column": 31
                                  }
                                },
                                "range": [
                                  16198,
                                  16217
                                ]
                              }
                            ]
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 16230,
                            "end": 16367,
                            "loc": {
                              "start": {
                                "line": 387,
                                "column": 12
                              },
                              "end": {
                                "line": 389,
                                "column": 49
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 16234,
                                "end": 16260,
                                "loc": {
                                  "start": {
                                    "line": 387,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 387,
                                    "column": 42
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 16234,
                                  "end": 16246,
                                  "loc": {
                                    "start": {
                                      "line": 387,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 387,
                                      "column": 28
                                    }
                                  },
                                  "name": "letterOffset",
                                  "leadingComments": null
                                },
                                "init": {
                                  "type": "BinaryExpression",
                                  "start": 16249,
                                  "end": 16260,
                                  "loc": {
                                    "start": {
                                      "line": 387,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 387,
                                      "column": 42
                                    }
                                  },
                                  "left": {
                                    "type": "BinaryExpression",
                                    "start": 16249,
                                    "end": 16257,
                                    "loc": {
                                      "start": {
                                        "line": 387,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 387,
                                        "column": 39
                                      }
                                    },
                                    "left": {
                                      "type": "Literal",
                                      "start": 16249,
                                      "end": 16250,
                                      "loc": {
                                        "start": {
                                          "line": 387,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 387,
                                          "column": 32
                                        }
                                      },
                                      "value": 3,
                                      "rawValue": 3,
                                      "raw": "3"
                                    },
                                    "operator": "*",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 16253,
                                      "end": 16257,
                                      "loc": {
                                        "start": {
                                          "line": 387,
                                          "column": 35
                                        },
                                        "end": {
                                          "line": 387,
                                          "column": 39
                                        }
                                      },
                                      "name": "step"
                                    }
                                  },
                                  "operator": "/",
                                  "right": {
                                    "type": "Literal",
                                    "start": 16258,
                                    "end": 16260,
                                    "loc": {
                                      "start": {
                                        "line": 387,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 387,
                                        "column": 42
                                      }
                                    },
                                    "value": 10,
                                    "rawValue": 10,
                                    "raw": "10"
                                  }
                                },
                                "leadingComments": null
                              },
                              {
                                "type": "VariableDeclarator",
                                "start": 16278,
                                "end": 16316,
                                "loc": {
                                  "start": {
                                    "line": 388,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 388,
                                    "column": 54
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 16278,
                                  "end": 16290,
                                  "loc": {
                                    "start": {
                                      "line": 388,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 388,
                                      "column": 28
                                    }
                                  },
                                  "name": "letterHeight"
                                },
                                "init": {
                                  "type": "BinaryExpression",
                                  "start": 16293,
                                  "end": 16316,
                                  "loc": {
                                    "start": {
                                      "line": 388,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 388,
                                      "column": 54
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 16293,
                                    "end": 16297,
                                    "loc": {
                                      "start": {
                                        "line": 388,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 388,
                                        "column": 35
                                      }
                                    },
                                    "name": "step"
                                  },
                                  "operator": "-",
                                  "right": {
                                    "type": "BinaryExpression",
                                    "start": 16300,
                                    "end": 16316,
                                    "loc": {
                                      "start": {
                                        "line": 388,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 388,
                                        "column": 54
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 16300,
                                      "end": 16312,
                                      "loc": {
                                        "start": {
                                          "line": 388,
                                          "column": 38
                                        },
                                        "end": {
                                          "line": 388,
                                          "column": 50
                                        }
                                      },
                                      "name": "letterOffset"
                                    },
                                    "operator": "*",
                                    "right": {
                                      "type": "Literal",
                                      "start": 16315,
                                      "end": 16316,
                                      "loc": {
                                        "start": {
                                          "line": 388,
                                          "column": 53
                                        },
                                        "end": {
                                          "line": 388,
                                          "column": 54
                                        }
                                      },
                                      "value": 2,
                                      "rawValue": 2,
                                      "raw": "2"
                                    }
                                  }
                                }
                              },
                              {
                                "type": "VariableDeclarator",
                                "start": 16334,
                                "end": 16366,
                                "loc": {
                                  "start": {
                                    "line": 389,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 389,
                                    "column": 48
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 16334,
                                  "end": 16345,
                                  "loc": {
                                    "start": {
                                      "line": 389,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 389,
                                      "column": 27
                                    }
                                  },
                                  "name": "letterWidth"
                                },
                                "init": {
                                  "type": "BinaryExpression",
                                  "start": 16348,
                                  "end": 16366,
                                  "loc": {
                                    "start": {
                                      "line": 389,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 389,
                                      "column": 48
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 16348,
                                    "end": 16360,
                                    "loc": {
                                      "start": {
                                        "line": 389,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 389,
                                        "column": 42
                                      }
                                    },
                                    "name": "letterHeight"
                                  },
                                  "operator": "*",
                                  "right": {
                                    "type": "Literal",
                                    "start": 16363,
                                    "end": 16366,
                                    "loc": {
                                      "start": {
                                        "line": 389,
                                        "column": 45
                                      },
                                      "end": {
                                        "line": 389,
                                        "column": 48
                                      }
                                    },
                                    "value": 0.6,
                                    "rawValue": 0.6,
                                    "raw": "0.6"
                                  }
                                }
                              }
                            ],
                            "kind": "var",
                            "leadingComments": [
                              {
                                "type": "CommentLine",
                                "value": " symbols \"x\", \"y\"",
                                "start": 16198,
                                "end": 16217,
                                "loc": {
                                  "start": {
                                    "line": 386,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 386,
                                    "column": 31
                                  }
                                },
                                "range": [
                                  16198,
                                  16217
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16380,
                            "end": 16432,
                            "loc": {
                              "start": {
                                "line": 390,
                                "column": 12
                              },
                              "end": {
                                "line": 390,
                                "column": 64
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16380,
                              "end": 16431,
                              "loc": {
                                "start": {
                                  "line": 390,
                                  "column": 12
                                },
                                "end": {
                                  "line": 390,
                                  "column": 63
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16380,
                                "end": 16389,
                                "loc": {
                                  "start": {
                                    "line": 390,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 390,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 16390,
                                  "end": 16413,
                                  "loc": {
                                    "start": {
                                      "line": 390,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 390,
                                      "column": 45
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 16390,
                                    "end": 16398,
                                    "loc": {
                                      "start": {
                                        "line": 390,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 390,
                                        "column": 30
                                      }
                                    },
                                    "name": "axisSize"
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 16401,
                                    "end": 16413,
                                    "loc": {
                                      "start": {
                                        "line": 390,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 390,
                                        "column": 45
                                      }
                                    },
                                    "name": "letterOffset"
                                  }
                                },
                                {
                                  "type": "Identifier",
                                  "start": 16415,
                                  "end": 16427,
                                  "loc": {
                                    "start": {
                                      "line": 390,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 390,
                                      "column": 59
                                    }
                                  },
                                  "name": "letterOffset"
                                },
                                {
                                  "type": "Literal",
                                  "start": 16429,
                                  "end": 16430,
                                  "loc": {
                                    "start": {
                                      "line": 390,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 390,
                                      "column": 62
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16445,
                            "end": 16526,
                            "loc": {
                              "start": {
                                "line": 391,
                                "column": 12
                              },
                              "end": {
                                "line": 391,
                                "column": 93
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16445,
                              "end": 16525,
                              "loc": {
                                "start": {
                                  "line": 391,
                                  "column": 12
                                },
                                "end": {
                                  "line": 391,
                                  "column": 92
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16445,
                                "end": 16454,
                                "loc": {
                                  "start": {
                                    "line": 391,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 391,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 16455,
                                  "end": 16492,
                                  "loc": {
                                    "start": {
                                      "line": 391,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 391,
                                      "column": 59
                                    }
                                  },
                                  "left": {
                                    "type": "BinaryExpression",
                                    "start": 16455,
                                    "end": 16478,
                                    "loc": {
                                      "start": {
                                        "line": 391,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 391,
                                        "column": 45
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 16455,
                                      "end": 16463,
                                      "loc": {
                                        "start": {
                                          "line": 391,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 391,
                                          "column": 30
                                        }
                                      },
                                      "name": "axisSize"
                                    },
                                    "operator": "+",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 16466,
                                      "end": 16478,
                                      "loc": {
                                        "start": {
                                          "line": 391,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 391,
                                          "column": 45
                                        }
                                      },
                                      "name": "letterOffset"
                                    }
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 16481,
                                    "end": 16492,
                                    "loc": {
                                      "start": {
                                        "line": 391,
                                        "column": 48
                                      },
                                      "end": {
                                        "line": 391,
                                        "column": 59
                                      }
                                    },
                                    "name": "letterWidth"
                                  }
                                },
                                {
                                  "type": "BinaryExpression",
                                  "start": 16494,
                                  "end": 16521,
                                  "loc": {
                                    "start": {
                                      "line": 391,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 391,
                                      "column": 88
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 16494,
                                    "end": 16506,
                                    "loc": {
                                      "start": {
                                        "line": 391,
                                        "column": 61
                                      },
                                      "end": {
                                        "line": 391,
                                        "column": 73
                                      }
                                    },
                                    "name": "letterOffset"
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 16509,
                                    "end": 16521,
                                    "loc": {
                                      "start": {
                                        "line": 391,
                                        "column": 76
                                      },
                                      "end": {
                                        "line": 391,
                                        "column": 88
                                      }
                                    },
                                    "name": "letterHeight"
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 16523,
                                  "end": 16524,
                                  "loc": {
                                    "start": {
                                      "line": 391,
                                      "column": 90
                                    },
                                    "end": {
                                      "line": 391,
                                      "column": 91
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16539,
                            "end": 16606,
                            "loc": {
                              "start": {
                                "line": 392,
                                "column": 12
                              },
                              "end": {
                                "line": 392,
                                "column": 79
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16539,
                              "end": 16605,
                              "loc": {
                                "start": {
                                  "line": 392,
                                  "column": 12
                                },
                                "end": {
                                  "line": 392,
                                  "column": 78
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16539,
                                "end": 16548,
                                "loc": {
                                  "start": {
                                    "line": 392,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 392,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 16549,
                                  "end": 16572,
                                  "loc": {
                                    "start": {
                                      "line": 392,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 392,
                                      "column": 45
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 16549,
                                    "end": 16557,
                                    "loc": {
                                      "start": {
                                        "line": 392,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 392,
                                        "column": 30
                                      }
                                    },
                                    "name": "axisSize"
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 16560,
                                    "end": 16572,
                                    "loc": {
                                      "start": {
                                        "line": 392,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 392,
                                        "column": 45
                                      }
                                    },
                                    "name": "letterOffset"
                                  }
                                },
                                {
                                  "type": "BinaryExpression",
                                  "start": 16574,
                                  "end": 16601,
                                  "loc": {
                                    "start": {
                                      "line": 392,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 392,
                                      "column": 74
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 16574,
                                    "end": 16586,
                                    "loc": {
                                      "start": {
                                        "line": 392,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 392,
                                        "column": 59
                                      }
                                    },
                                    "name": "letterOffset"
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 16589,
                                    "end": 16601,
                                    "loc": {
                                      "start": {
                                        "line": 392,
                                        "column": 62
                                      },
                                      "end": {
                                        "line": 392,
                                        "column": 74
                                      }
                                    },
                                    "name": "letterHeight"
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 16603,
                                  "end": 16604,
                                  "loc": {
                                    "start": {
                                      "line": 392,
                                      "column": 76
                                    },
                                    "end": {
                                      "line": 392,
                                      "column": 77
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16619,
                            "end": 16685,
                            "loc": {
                              "start": {
                                "line": 393,
                                "column": 12
                              },
                              "end": {
                                "line": 393,
                                "column": 78
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16619,
                              "end": 16684,
                              "loc": {
                                "start": {
                                  "line": 393,
                                  "column": 12
                                },
                                "end": {
                                  "line": 393,
                                  "column": 77
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16619,
                                "end": 16628,
                                "loc": {
                                  "start": {
                                    "line": 393,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 393,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 16629,
                                  "end": 16666,
                                  "loc": {
                                    "start": {
                                      "line": 393,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 393,
                                      "column": 59
                                    }
                                  },
                                  "left": {
                                    "type": "BinaryExpression",
                                    "start": 16629,
                                    "end": 16652,
                                    "loc": {
                                      "start": {
                                        "line": 393,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 393,
                                        "column": 45
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 16629,
                                      "end": 16637,
                                      "loc": {
                                        "start": {
                                          "line": 393,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 393,
                                          "column": 30
                                        }
                                      },
                                      "name": "axisSize"
                                    },
                                    "operator": "+",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 16640,
                                      "end": 16652,
                                      "loc": {
                                        "start": {
                                          "line": 393,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 393,
                                          "column": 45
                                        }
                                      },
                                      "name": "letterOffset"
                                    }
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 16655,
                                    "end": 16666,
                                    "loc": {
                                      "start": {
                                        "line": 393,
                                        "column": 48
                                      },
                                      "end": {
                                        "line": 393,
                                        "column": 59
                                      }
                                    },
                                    "name": "letterWidth"
                                  }
                                },
                                {
                                  "type": "Identifier",
                                  "start": 16668,
                                  "end": 16680,
                                  "loc": {
                                    "start": {
                                      "line": 393,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 393,
                                      "column": 73
                                    }
                                  },
                                  "name": "letterOffset"
                                },
                                {
                                  "type": "Literal",
                                  "start": 16682,
                                  "end": 16683,
                                  "loc": {
                                    "start": {
                                      "line": 393,
                                      "column": 75
                                    },
                                    "end": {
                                      "line": 393,
                                      "column": 76
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16698,
                            "end": 16750,
                            "loc": {
                              "start": {
                                "line": 394,
                                "column": 12
                              },
                              "end": {
                                "line": 394,
                                "column": 64
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16698,
                              "end": 16749,
                              "loc": {
                                "start": {
                                  "line": 394,
                                  "column": 12
                                },
                                "end": {
                                  "line": 394,
                                  "column": 63
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16698,
                                "end": 16707,
                                "loc": {
                                  "start": {
                                    "line": 394,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 394,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 16708,
                                  "end": 16720,
                                  "loc": {
                                    "start": {
                                      "line": 394,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 394,
                                      "column": 34
                                    }
                                  },
                                  "name": "letterOffset"
                                },
                                {
                                  "type": "BinaryExpression",
                                  "start": 16722,
                                  "end": 16745,
                                  "loc": {
                                    "start": {
                                      "line": 394,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 394,
                                      "column": 59
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 16722,
                                    "end": 16730,
                                    "loc": {
                                      "start": {
                                        "line": 394,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 394,
                                        "column": 44
                                      }
                                    },
                                    "name": "axisSize"
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 16733,
                                    "end": 16745,
                                    "loc": {
                                      "start": {
                                        "line": 394,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 394,
                                        "column": 59
                                      }
                                    },
                                    "name": "letterOffset"
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 16747,
                                  "end": 16748,
                                  "loc": {
                                    "start": {
                                      "line": 394,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 394,
                                      "column": 62
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16763,
                            "end": 16844,
                            "loc": {
                              "start": {
                                "line": 395,
                                "column": 12
                              },
                              "end": {
                                "line": 395,
                                "column": 93
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16763,
                              "end": 16843,
                              "loc": {
                                "start": {
                                  "line": 395,
                                  "column": 12
                                },
                                "end": {
                                  "line": 395,
                                  "column": 92
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16763,
                                "end": 16772,
                                "loc": {
                                  "start": {
                                    "line": 395,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 395,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 16773,
                                  "end": 16799,
                                  "loc": {
                                    "start": {
                                      "line": 395,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 395,
                                      "column": 48
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 16773,
                                    "end": 16785,
                                    "loc": {
                                      "start": {
                                        "line": 395,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 395,
                                        "column": 34
                                      }
                                    },
                                    "name": "letterOffset"
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 16788,
                                    "end": 16799,
                                    "loc": {
                                      "start": {
                                        "line": 395,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 395,
                                        "column": 48
                                      }
                                    },
                                    "name": "letterWidth"
                                  }
                                },
                                {
                                  "type": "BinaryExpression",
                                  "start": 16801,
                                  "end": 16839,
                                  "loc": {
                                    "start": {
                                      "line": 395,
                                      "column": 50
                                    },
                                    "end": {
                                      "line": 395,
                                      "column": 88
                                    }
                                  },
                                  "left": {
                                    "type": "BinaryExpression",
                                    "start": 16801,
                                    "end": 16824,
                                    "loc": {
                                      "start": {
                                        "line": 395,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 395,
                                        "column": 73
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 16801,
                                      "end": 16809,
                                      "loc": {
                                        "start": {
                                          "line": 395,
                                          "column": 50
                                        },
                                        "end": {
                                          "line": 395,
                                          "column": 58
                                        }
                                      },
                                      "name": "axisSize"
                                    },
                                    "operator": "+",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 16812,
                                      "end": 16824,
                                      "loc": {
                                        "start": {
                                          "line": 395,
                                          "column": 61
                                        },
                                        "end": {
                                          "line": 395,
                                          "column": 73
                                        }
                                      },
                                      "name": "letterOffset"
                                    }
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 16827,
                                    "end": 16839,
                                    "loc": {
                                      "start": {
                                        "line": 395,
                                        "column": 76
                                      },
                                      "end": {
                                        "line": 395,
                                        "column": 88
                                      }
                                    },
                                    "name": "letterHeight"
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 16841,
                                  "end": 16842,
                                  "loc": {
                                    "start": {
                                      "line": 395,
                                      "column": 90
                                    },
                                    "end": {
                                      "line": 395,
                                      "column": 91
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16857,
                            "end": 16924,
                            "loc": {
                              "start": {
                                "line": 396,
                                "column": 12
                              },
                              "end": {
                                "line": 396,
                                "column": 79
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16857,
                              "end": 16923,
                              "loc": {
                                "start": {
                                  "line": 396,
                                  "column": 12
                                },
                                "end": {
                                  "line": 396,
                                  "column": 78
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16857,
                                "end": 16866,
                                "loc": {
                                  "start": {
                                    "line": 396,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 396,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 16867,
                                  "end": 16879,
                                  "loc": {
                                    "start": {
                                      "line": 396,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 396,
                                      "column": 34
                                    }
                                  },
                                  "name": "letterOffset"
                                },
                                {
                                  "type": "BinaryExpression",
                                  "start": 16881,
                                  "end": 16919,
                                  "loc": {
                                    "start": {
                                      "line": 396,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 396,
                                      "column": 74
                                    }
                                  },
                                  "left": {
                                    "type": "BinaryExpression",
                                    "start": 16881,
                                    "end": 16904,
                                    "loc": {
                                      "start": {
                                        "line": 396,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 396,
                                        "column": 59
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 16881,
                                      "end": 16889,
                                      "loc": {
                                        "start": {
                                          "line": 396,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 396,
                                          "column": 44
                                        }
                                      },
                                      "name": "axisSize"
                                    },
                                    "operator": "+",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 16892,
                                      "end": 16904,
                                      "loc": {
                                        "start": {
                                          "line": 396,
                                          "column": 47
                                        },
                                        "end": {
                                          "line": 396,
                                          "column": 59
                                        }
                                      },
                                      "name": "letterOffset"
                                    }
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 16907,
                                    "end": 16919,
                                    "loc": {
                                      "start": {
                                        "line": 396,
                                        "column": 62
                                      },
                                      "end": {
                                        "line": 396,
                                        "column": 74
                                      }
                                    },
                                    "name": "letterHeight"
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 16921,
                                  "end": 16922,
                                  "loc": {
                                    "start": {
                                      "line": 396,
                                      "column": 76
                                    },
                                    "end": {
                                      "line": 396,
                                      "column": 77
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16937,
                            "end": 17026,
                            "loc": {
                              "start": {
                                "line": 397,
                                "column": 12
                              },
                              "end": {
                                "line": 397,
                                "column": 101
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16937,
                              "end": 17025,
                              "loc": {
                                "start": {
                                  "line": 397,
                                  "column": 12
                                },
                                "end": {
                                  "line": 397,
                                  "column": 100
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16937,
                                "end": 16946,
                                "loc": {
                                  "start": {
                                    "line": 397,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 397,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 16947,
                                  "end": 16977,
                                  "loc": {
                                    "start": {
                                      "line": 397,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 397,
                                      "column": 52
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 16947,
                                    "end": 16959,
                                    "loc": {
                                      "start": {
                                        "line": 397,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 397,
                                        "column": 34
                                      }
                                    },
                                    "name": "letterOffset"
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "BinaryExpression",
                                    "start": 16962,
                                    "end": 16977,
                                    "loc": {
                                      "start": {
                                        "line": 397,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 397,
                                        "column": 52
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 16962,
                                      "end": 16973,
                                      "loc": {
                                        "start": {
                                          "line": 397,
                                          "column": 37
                                        },
                                        "end": {
                                          "line": 397,
                                          "column": 48
                                        }
                                      },
                                      "name": "letterWidth"
                                    },
                                    "operator": "/",
                                    "right": {
                                      "type": "Literal",
                                      "start": 16976,
                                      "end": 16977,
                                      "loc": {
                                        "start": {
                                          "line": 397,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 397,
                                          "column": 52
                                        }
                                      },
                                      "value": 2,
                                      "rawValue": 2,
                                      "raw": "2"
                                    }
                                  }
                                },
                                {
                                  "type": "BinaryExpression",
                                  "start": 16979,
                                  "end": 17021,
                                  "loc": {
                                    "start": {
                                      "line": 397,
                                      "column": 54
                                    },
                                    "end": {
                                      "line": 397,
                                      "column": 96
                                    }
                                  },
                                  "left": {
                                    "type": "BinaryExpression",
                                    "start": 16979,
                                    "end": 17002,
                                    "loc": {
                                      "start": {
                                        "line": 397,
                                        "column": 54
                                      },
                                      "end": {
                                        "line": 397,
                                        "column": 77
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 16979,
                                      "end": 16987,
                                      "loc": {
                                        "start": {
                                          "line": 397,
                                          "column": 54
                                        },
                                        "end": {
                                          "line": 397,
                                          "column": 62
                                        }
                                      },
                                      "name": "axisSize"
                                    },
                                    "operator": "+",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 16990,
                                      "end": 17002,
                                      "loc": {
                                        "start": {
                                          "line": 397,
                                          "column": 65
                                        },
                                        "end": {
                                          "line": 397,
                                          "column": 77
                                        }
                                      },
                                      "name": "letterOffset"
                                    }
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "BinaryExpression",
                                    "start": 17005,
                                    "end": 17021,
                                    "loc": {
                                      "start": {
                                        "line": 397,
                                        "column": 80
                                      },
                                      "end": {
                                        "line": 397,
                                        "column": 96
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 17005,
                                      "end": 17017,
                                      "loc": {
                                        "start": {
                                          "line": 397,
                                          "column": 80
                                        },
                                        "end": {
                                          "line": 397,
                                          "column": 92
                                        }
                                      },
                                      "name": "letterHeight"
                                    },
                                    "operator": "/",
                                    "right": {
                                      "type": "Literal",
                                      "start": 17020,
                                      "end": 17021,
                                      "loc": {
                                        "start": {
                                          "line": 397,
                                          "column": 95
                                        },
                                        "end": {
                                          "line": 397,
                                          "column": 96
                                        }
                                      },
                                      "value": 2,
                                      "rawValue": 2,
                                      "raw": "2"
                                    }
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 17023,
                                  "end": 17024,
                                  "loc": {
                                    "start": {
                                      "line": 397,
                                      "column": 98
                                    },
                                    "end": {
                                      "line": 397,
                                      "column": 99
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            },
                            "trailingComments": [
                              {
                                "type": "CommentLine",
                                "value": "note: vertex counts must not change after first render",
                                "start": 17040,
                                "end": 17096,
                                "loc": {
                                  "start": {
                                    "line": 399,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 399,
                                    "column": 68
                                  }
                                },
                                "range": [
                                  17040,
                                  17096
                                ]
                              }
                            ]
                          },
                          {
                            "type": "IfStatement",
                            "start": 17109,
                            "end": 17306,
                            "loc": {
                              "start": {
                                "line": 400,
                                "column": 12
                              },
                              "end": {
                                "line": 402,
                                "column": 73
                              }
                            },
                            "test": {
                              "type": "LogicalExpression",
                              "start": 17113,
                              "end": 17231,
                              "loc": {
                                "start": {
                                  "line": 400,
                                  "column": 16
                                },
                                "end": {
                                  "line": 401,
                                  "column": 65
                                }
                              },
                              "left": {
                                "type": "BinaryExpression",
                                "start": 17113,
                                "end": 17162,
                                "loc": {
                                  "start": {
                                    "line": 400,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 400,
                                    "column": 65
                                  }
                                },
                                "left": {
                                  "type": "Identifier",
                                  "start": 17113,
                                  "end": 17122,
                                  "loc": {
                                    "start": {
                                      "line": 400,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 400,
                                      "column": 25
                                    }
                                  },
                                  "name": "gridCount",
                                  "leadingComments": null
                                },
                                "operator": "!=",
                                "right": {
                                  "type": "MemberExpression",
                                  "start": 17126,
                                  "end": 17162,
                                  "loc": {
                                    "start": {
                                      "line": 400,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 400,
                                      "column": 65
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 17126,
                                    "end": 17155,
                                    "loc": {
                                      "start": {
                                        "line": 400,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 400,
                                        "column": 58
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 17126,
                                      "end": 17146,
                                      "loc": {
                                        "start": {
                                          "line": 400,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 400,
                                          "column": 49
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 17126,
                                        "end": 17137,
                                        "loc": {
                                          "start": {
                                            "line": 400,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 400,
                                            "column": 40
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 17126,
                                          "end": 17130,
                                          "loc": {
                                            "start": {
                                              "line": 400,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 400,
                                              "column": 33
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 17131,
                                          "end": 17137,
                                          "loc": {
                                            "start": {
                                              "line": 400,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 400,
                                              "column": 40
                                            }
                                          },
                                          "name": "__grid"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 17138,
                                        "end": 17146,
                                        "loc": {
                                          "start": {
                                            "line": 400,
                                            "column": 41
                                          },
                                          "end": {
                                            "line": 400,
                                            "column": 49
                                          }
                                        },
                                        "name": "geometry"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 17147,
                                      "end": 17155,
                                      "loc": {
                                        "start": {
                                          "line": 400,
                                          "column": 50
                                        },
                                        "end": {
                                          "line": 400,
                                          "column": 58
                                        }
                                      },
                                      "name": "vertices"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 17156,
                                    "end": 17162,
                                    "loc": {
                                      "start": {
                                        "line": 400,
                                        "column": 59
                                      },
                                      "end": {
                                        "line": 400,
                                        "column": 65
                                      }
                                    },
                                    "name": "length"
                                  },
                                  "computed": false
                                },
                                "leadingComments": null
                              },
                              "operator": "||",
                              "right": {
                                "type": "BinaryExpression",
                                "start": 17182,
                                "end": 17231,
                                "loc": {
                                  "start": {
                                    "line": 401,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 401,
                                    "column": 65
                                  }
                                },
                                "left": {
                                  "type": "Identifier",
                                  "start": 17182,
                                  "end": 17191,
                                  "loc": {
                                    "start": {
                                      "line": 401,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 401,
                                      "column": 25
                                    }
                                  },
                                  "name": "axisCount"
                                },
                                "operator": "!=",
                                "right": {
                                  "type": "MemberExpression",
                                  "start": 17195,
                                  "end": 17231,
                                  "loc": {
                                    "start": {
                                      "line": 401,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 401,
                                      "column": 65
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 17195,
                                    "end": 17224,
                                    "loc": {
                                      "start": {
                                        "line": 401,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 401,
                                        "column": 58
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 17195,
                                      "end": 17215,
                                      "loc": {
                                        "start": {
                                          "line": 401,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 401,
                                          "column": 49
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 17195,
                                        "end": 17206,
                                        "loc": {
                                          "start": {
                                            "line": 401,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 401,
                                            "column": 40
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 17195,
                                          "end": 17199,
                                          "loc": {
                                            "start": {
                                              "line": 401,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 401,
                                              "column": 33
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 17200,
                                          "end": 17206,
                                          "loc": {
                                            "start": {
                                              "line": 401,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 401,
                                              "column": 40
                                            }
                                          },
                                          "name": "__axis"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 17207,
                                        "end": 17215,
                                        "loc": {
                                          "start": {
                                            "line": 401,
                                            "column": 41
                                          },
                                          "end": {
                                            "line": 401,
                                            "column": 49
                                          }
                                        },
                                        "name": "geometry"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 17216,
                                      "end": 17224,
                                      "loc": {
                                        "start": {
                                          "line": 401,
                                          "column": 50
                                        },
                                        "end": {
                                          "line": 401,
                                          "column": 58
                                        }
                                      },
                                      "name": "vertices"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 17225,
                                    "end": 17231,
                                    "loc": {
                                      "start": {
                                        "line": 401,
                                        "column": 59
                                      },
                                      "end": {
                                        "line": 401,
                                        "column": 65
                                      }
                                    },
                                    "name": "length"
                                  },
                                  "computed": false
                                }
                              },
                              "leadingComments": null
                            },
                            "consequent": {
                              "type": "ExpressionStatement",
                              "start": 17249,
                              "end": 17306,
                              "loc": {
                                "start": {
                                  "line": 402,
                                  "column": 16
                                },
                                "end": {
                                  "line": 402,
                                  "column": 73
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 17249,
                                "end": 17305,
                                "loc": {
                                  "start": {
                                    "line": 402,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 402,
                                    "column": 72
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 17249,
                                  "end": 17262,
                                  "loc": {
                                    "start": {
                                      "line": 402,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 402,
                                      "column": 29
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 17249,
                                    "end": 17256,
                                    "loc": {
                                      "start": {
                                        "line": 402,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 402,
                                        "column": 23
                                      }
                                    },
                                    "name": "console"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 17257,
                                    "end": 17262,
                                    "loc": {
                                      "start": {
                                        "line": 402,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 402,
                                        "column": 29
                                      }
                                    },
                                    "name": "error"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Literal",
                                    "start": 17263,
                                    "end": 17304,
                                    "loc": {
                                      "start": {
                                        "line": 402,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 402,
                                        "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": 17040,
                                "end": 17096,
                                "loc": {
                                  "start": {
                                    "line": 399,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 399,
                                    "column": 68
                                  }
                                },
                                "range": [
                                  17040,
                                  17096
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 17320,
                            "end": 17367,
                            "loc": {
                              "start": {
                                "line": 404,
                                "column": 12
                              },
                              "end": {
                                "line": 404,
                                "column": 59
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 17320,
                              "end": 17366,
                              "loc": {
                                "start": {
                                  "line": 404,
                                  "column": 12
                                },
                                "end": {
                                  "line": 404,
                                  "column": 58
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 17320,
                                "end": 17359,
                                "loc": {
                                  "start": {
                                    "line": 404,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 404,
                                    "column": 51
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 17320,
                                  "end": 17340,
                                  "loc": {
                                    "start": {
                                      "line": 404,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 404,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 17320,
                                    "end": 17331,
                                    "loc": {
                                      "start": {
                                        "line": 404,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 404,
                                        "column": 23
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 17320,
                                      "end": 17324,
                                      "loc": {
                                        "start": {
                                          "line": 404,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 404,
                                          "column": 16
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 17325,
                                      "end": 17331,
                                      "loc": {
                                        "start": {
                                          "line": 404,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 404,
                                          "column": 23
                                        }
                                      },
                                      "name": "__grid"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 17332,
                                    "end": 17340,
                                    "loc": {
                                      "start": {
                                        "line": 404,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 404,
                                        "column": 32
                                      }
                                    },
                                    "name": "geometry"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 17341,
                                  "end": 17359,
                                  "loc": {
                                    "start": {
                                      "line": 404,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 404,
                                      "column": 51
                                    }
                                  },
                                  "name": "verticesNeedUpdate"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "Literal",
                                "start": 17362,
                                "end": 17366,
                                "loc": {
                                  "start": {
                                    "line": 404,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 404,
                                    "column": 58
                                  }
                                },
                                "value": true,
                                "rawValue": true,
                                "raw": "true"
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 17380,
                            "end": 17427,
                            "loc": {
                              "start": {
                                "line": 405,
                                "column": 12
                              },
                              "end": {
                                "line": 405,
                                "column": 59
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 17380,
                              "end": 17426,
                              "loc": {
                                "start": {
                                  "line": 405,
                                  "column": 12
                                },
                                "end": {
                                  "line": 405,
                                  "column": 58
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 17380,
                                "end": 17419,
                                "loc": {
                                  "start": {
                                    "line": 405,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 405,
                                    "column": 51
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 17380,
                                  "end": 17400,
                                  "loc": {
                                    "start": {
                                      "line": 405,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 405,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 17380,
                                    "end": 17391,
                                    "loc": {
                                      "start": {
                                        "line": 405,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 405,
                                        "column": 23
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 17380,
                                      "end": 17384,
                                      "loc": {
                                        "start": {
                                          "line": 405,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 405,
                                          "column": 16
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 17385,
                                      "end": 17391,
                                      "loc": {
                                        "start": {
                                          "line": 405,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 405,
                                          "column": 23
                                        }
                                      },
                                      "name": "__axis"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 17392,
                                    "end": 17400,
                                    "loc": {
                                      "start": {
                                        "line": 405,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 405,
                                        "column": 32
                                      }
                                    },
                                    "name": "geometry"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 17401,
                                  "end": 17419,
                                  "loc": {
                                    "start": {
                                      "line": 405,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 405,
                                      "column": 51
                                    }
                                  },
                                  "name": "verticesNeedUpdate"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "Literal",
                                "start": 17422,
                                "end": 17426,
                                "loc": {
                                  "start": {
                                    "line": 405,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 405,
                                    "column": 58
                                  }
                                },
                                "value": true,
                                "rawValue": true,
                                "raw": "true"
                              }
                            }
                          }
                        ]
                      },
                      "alternate": null
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 17449,
              "end": 17611,
              "loc": {
                "start": {
                  "line": 409,
                  "column": 4
                },
                "end": {
                  "line": 412,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 17449,
                "end": 17461,
                "loc": {
                  "start": {
                    "line": 409,
                    "column": 4
                  },
                  "end": {
                    "line": 409,
                    "column": 16
                  }
                },
                "name": "calcGridStep"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 17461,
                "end": 17611,
                "loc": {
                  "start": {
                    "line": 409,
                    "column": 16
                  },
                  "end": {
                    "line": 412,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 17462,
                    "end": 17471,
                    "loc": {
                      "start": {
                        "line": 409,
                        "column": 17
                      },
                      "end": {
                        "line": 409,
                        "column": 26
                      }
                    },
                    "name": "modelSize"
                  },
                  {
                    "type": "Identifier",
                    "start": 17473,
                    "end": 17480,
                    "loc": {
                      "start": {
                        "line": 409,
                        "column": 28
                      },
                      "end": {
                        "line": 409,
                        "column": 35
                      }
                    },
                    "name": "oldstep"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 17482,
                  "end": 17611,
                  "loc": {
                    "start": {
                      "line": 409,
                      "column": 37
                    },
                    "end": {
                      "line": 412,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 17492,
                      "end": 17569,
                      "loc": {
                        "start": {
                          "line": 410,
                          "column": 8
                        },
                        "end": {
                          "line": 410,
                          "column": 85
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 17496,
                          "end": 17568,
                          "loc": {
                            "start": {
                              "line": 410,
                              "column": 12
                            },
                            "end": {
                              "line": 410,
                              "column": 84
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 17496,
                            "end": 17501,
                            "loc": {
                              "start": {
                                "line": 410,
                                "column": 12
                              },
                              "end": {
                                "line": 410,
                                "column": 17
                              }
                            },
                            "name": "power"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 17504,
                            "end": 17568,
                            "loc": {
                              "start": {
                                "line": 410,
                                "column": 20
                              },
                              "end": {
                                "line": 410,
                                "column": 84
                              }
                            },
                            "left": {
                              "type": "CallExpression",
                              "start": 17504,
                              "end": 17564,
                              "loc": {
                                "start": {
                                  "line": 410,
                                  "column": 20
                                },
                                "end": {
                                  "line": 410,
                                  "column": 80
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 17504,
                                "end": 17514,
                                "loc": {
                                  "start": {
                                    "line": 410,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 410,
                                    "column": 30
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 17504,
                                  "end": 17508,
                                  "loc": {
                                    "start": {
                                      "line": 410,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 410,
                                      "column": 24
                                    }
                                  },
                                  "name": "Math"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 17509,
                                  "end": 17514,
                                  "loc": {
                                    "start": {
                                      "line": 410,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 410,
                                      "column": 30
                                    }
                                  },
                                  "name": "floor"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "CallExpression",
                                  "start": 17515,
                                  "end": 17563,
                                  "loc": {
                                    "start": {
                                      "line": 410,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 410,
                                      "column": 79
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 17515,
                                    "end": 17525,
                                    "loc": {
                                      "start": {
                                        "line": 410,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 410,
                                        "column": 41
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 17515,
                                      "end": 17519,
                                      "loc": {
                                        "start": {
                                          "line": 410,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 410,
                                          "column": 35
                                        }
                                      },
                                      "name": "Math"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 17520,
                                      "end": 17525,
                                      "loc": {
                                        "start": {
                                          "line": 410,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 410,
                                          "column": 41
                                        }
                                      },
                                      "name": "log10"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "CallExpression",
                                      "start": 17526,
                                      "end": 17562,
                                      "loc": {
                                        "start": {
                                          "line": 410,
                                          "column": 42
                                        },
                                        "end": {
                                          "line": 410,
                                          "column": 78
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 17526,
                                        "end": 17534,
                                        "loc": {
                                          "start": {
                                            "line": 410,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 410,
                                            "column": 50
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 17526,
                                          "end": 17530,
                                          "loc": {
                                            "start": {
                                              "line": 410,
                                              "column": 42
                                            },
                                            "end": {
                                              "line": 410,
                                              "column": 46
                                            }
                                          },
                                          "name": "Math"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 17531,
                                          "end": 17534,
                                          "loc": {
                                            "start": {
                                              "line": 410,
                                              "column": 47
                                            },
                                            "end": {
                                              "line": 410,
                                              "column": 50
                                            }
                                          },
                                          "name": "abs"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "BinaryExpression",
                                          "start": 17535,
                                          "end": 17561,
                                          "loc": {
                                            "start": {
                                              "line": 410,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 410,
                                              "column": 77
                                            }
                                          },
                                          "left": {
                                            "type": "Identifier",
                                            "start": 17535,
                                            "end": 17544,
                                            "loc": {
                                              "start": {
                                                "line": 410,
                                                "column": 51
                                              },
                                              "end": {
                                                "line": 410,
                                                "column": 60
                                              }
                                            },
                                            "name": "modelSize"
                                          },
                                          "operator": "*",
                                          "right": {
                                            "type": "MemberExpression",
                                            "start": 17547,
                                            "end": 17561,
                                            "loc": {
                                              "start": {
                                                "line": 410,
                                                "column": 63
                                              },
                                              "end": {
                                                "line": 410,
                                                "column": 77
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 17547,
                                              "end": 17551,
                                              "loc": {
                                                "start": {
                                                  "line": 410,
                                                  "column": 63
                                                },
                                                "end": {
                                                  "line": 410,
                                                  "column": 67
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 17552,
                                              "end": 17561,
                                              "loc": {
                                                "start": {
                                                  "line": 410,
                                                  "column": 68
                                                },
                                                "end": {
                                                  "line": 410,
                                                  "column": 77
                                                }
                                              },
                                              "name": "gridScale"
                                            },
                                            "computed": false
                                          }
                                        }
                                      ]
                                    }
                                  ]
                                }
                              ]
                            },
                            "operator": "-",
                            "right": {
                              "type": "Literal",
                              "start": 17567,
                              "end": 17568,
                              "loc": {
                                "start": {
                                  "line": 410,
                                  "column": 83
                                },
                                "end": {
                                  "line": 410,
                                  "column": 84
                                }
                              },
                              "value": 1,
                              "rawValue": 1,
                              "raw": "1"
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 17578,
                      "end": 17605,
                      "loc": {
                        "start": {
                          "line": 411,
                          "column": 8
                        },
                        "end": {
                          "line": 411,
                          "column": 35
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 17585,
                        "end": 17604,
                        "loc": {
                          "start": {
                            "line": 411,
                            "column": 15
                          },
                          "end": {
                            "line": 411,
                            "column": 34
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 17585,
                          "end": 17593,
                          "loc": {
                            "start": {
                              "line": 411,
                              "column": 15
                            },
                            "end": {
                              "line": 411,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 17585,
                            "end": 17589,
                            "loc": {
                              "start": {
                                "line": 411,
                                "column": 15
                              },
                              "end": {
                                "line": 411,
                                "column": 19
                              }
                            },
                            "name": "Math"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 17590,
                            "end": 17593,
                            "loc": {
                              "start": {
                                "line": 411,
                                "column": 20
                              },
                              "end": {
                                "line": 411,
                                "column": 23
                              }
                            },
                            "name": "pow"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 17594,
                            "end": 17596,
                            "loc": {
                              "start": {
                                "line": 411,
                                "column": 24
                              },
                              "end": {
                                "line": 411,
                                "column": 26
                              }
                            },
                            "value": 10,
                            "rawValue": 10,
                            "raw": "10"
                          },
                          {
                            "type": "Identifier",
                            "start": 17598,
                            "end": 17603,
                            "loc": {
                              "start": {
                                "line": 411,
                                "column": 28
                              },
                              "end": {
                                "line": 411,
                                "column": 33
                              }
                            },
                            "name": "power"
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 17617,
              "end": 17843,
              "loc": {
                "start": {
                  "line": 414,
                  "column": 4
                },
                "end": {
                  "line": 419,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 17617,
                "end": 17629,
                "loc": {
                  "start": {
                    "line": 414,
                    "column": 4
                  },
                  "end": {
                    "line": 414,
                    "column": 16
                  }
                },
                "name": "calcAxisSize"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 17629,
                "end": 17843,
                "loc": {
                  "start": {
                    "line": 414,
                    "column": 16
                  },
                  "end": {
                    "line": 419,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 17630,
                    "end": 17634,
                    "loc": {
                      "start": {
                        "line": 414,
                        "column": 17
                      },
                      "end": {
                        "line": 414,
                        "column": 21
                      }
                    },
                    "name": "size"
                  },
                  {
                    "type": "Identifier",
                    "start": 17636,
                    "end": 17640,
                    "loc": {
                      "start": {
                        "line": 414,
                        "column": 23
                      },
                      "end": {
                        "line": 414,
                        "column": 27
                      }
                    },
                    "name": "step"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 17642,
                  "end": 17843,
                  "loc": {
                    "start": {
                      "line": 414,
                      "column": 29
                    },
                    "end": {
                      "line": 419,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 17652,
                      "end": 17689,
                      "loc": {
                        "start": {
                          "line": 415,
                          "column": 8
                        },
                        "end": {
                          "line": 415,
                          "column": 45
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 17656,
                        "end": 17666,
                        "loc": {
                          "start": {
                            "line": 415,
                            "column": 12
                          },
                          "end": {
                            "line": 415,
                            "column": 22
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 17656,
                          "end": 17660,
                          "loc": {
                            "start": {
                              "line": 415,
                              "column": 12
                            },
                            "end": {
                              "line": 415,
                              "column": 16
                            }
                          },
                          "name": "size"
                        },
                        "operator": "<=",
                        "right": {
                          "type": "Literal",
                          "start": 17664,
                          "end": 17666,
                          "loc": {
                            "start": {
                              "line": 415,
                              "column": 20
                            },
                            "end": {
                              "line": 415,
                              "column": 22
                            }
                          },
                          "value": 10,
                          "rawValue": 10,
                          "raw": "10"
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 17668,
                        "end": 17689,
                        "loc": {
                          "start": {
                            "line": 415,
                            "column": 24
                          },
                          "end": {
                            "line": 415,
                            "column": 45
                          }
                        },
                        "argument": {
                          "type": "MemberExpression",
                          "start": 17675,
                          "end": 17688,
                          "loc": {
                            "start": {
                              "line": 415,
                              "column": 31
                            },
                            "end": {
                              "line": 415,
                              "column": 44
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 17675,
                            "end": 17679,
                            "loc": {
                              "start": {
                                "line": 415,
                                "column": 31
                              },
                              "end": {
                                "line": 415,
                                "column": 35
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 17680,
                            "end": 17688,
                            "loc": {
                              "start": {
                                "line": 415,
                                "column": 36
                              },
                              "end": {
                                "line": 415,
                                "column": 44
                              }
                            },
                            "name": "axisSize"
                          },
                          "computed": false
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 17698,
                      "end": 17753,
                      "loc": {
                        "start": {
                          "line": 416,
                          "column": 8
                        },
                        "end": {
                          "line": 416,
                          "column": 63
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 17702,
                          "end": 17752,
                          "loc": {
                            "start": {
                              "line": 416,
                              "column": 12
                            },
                            "end": {
                              "line": 416,
                              "column": 62
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 17702,
                            "end": 17714,
                            "loc": {
                              "start": {
                                "line": 416,
                                "column": 12
                              },
                              "end": {
                                "line": 416,
                                "column": 24
                              }
                            },
                            "name": "axisCellSize"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 17718,
                            "end": 17752,
                            "loc": {
                              "start": {
                                "line": 416,
                                "column": 28
                              },
                              "end": {
                                "line": 416,
                                "column": 62
                              }
                            },
                            "left": {
                              "type": "Literal",
                              "start": 17718,
                              "end": 17719,
                              "loc": {
                                "start": {
                                  "line": 416,
                                  "column": 28
                                },
                                "end": {
                                  "line": 416,
                                  "column": 29
                                }
                              },
                              "value": 5,
                              "rawValue": 5,
                              "raw": "5"
                            },
                            "operator": "*",
                            "right": {
                              "type": "CallExpression",
                              "start": 17722,
                              "end": 17752,
                              "loc": {
                                "start": {
                                  "line": 416,
                                  "column": 32
                                },
                                "end": {
                                  "line": 416,
                                  "column": 62
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 17722,
                                "end": 17732,
                                "loc": {
                                  "start": {
                                    "line": 416,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 416,
                                    "column": 42
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 17722,
                                  "end": 17726,
                                  "loc": {
                                    "start": {
                                      "line": 416,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 416,
                                      "column": 36
                                    }
                                  },
                                  "name": "Math"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 17727,
                                  "end": 17732,
                                  "loc": {
                                    "start": {
                                      "line": 416,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 416,
                                      "column": 42
                                    }
                                  },
                                  "name": "floor"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 17733,
                                  "end": 17751,
                                  "loc": {
                                    "start": {
                                      "line": 416,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 416,
                                      "column": 61
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 17733,
                                    "end": 17737,
                                    "loc": {
                                      "start": {
                                        "line": 416,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 416,
                                        "column": 47
                                      }
                                    },
                                    "name": "size"
                                  },
                                  "operator": "/",
                                  "right": {
                                    "type": "BinaryExpression",
                                    "start": 17741,
                                    "end": 17750,
                                    "loc": {
                                      "start": {
                                        "line": 416,
                                        "column": 51
                                      },
                                      "end": {
                                        "line": 416,
                                        "column": 60
                                      }
                                    },
                                    "left": {
                                      "type": "Literal",
                                      "start": 17741,
                                      "end": 17743,
                                      "loc": {
                                        "start": {
                                          "line": 416,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 416,
                                          "column": 53
                                        }
                                      },
                                      "value": 20,
                                      "rawValue": 20,
                                      "raw": "20"
                                    },
                                    "operator": "*",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 17746,
                                      "end": 17750,
                                      "loc": {
                                        "start": {
                                          "line": 416,
                                          "column": 56
                                        },
                                        "end": {
                                          "line": 416,
                                          "column": 60
                                        }
                                      },
                                      "name": "step"
                                    },
                                    "parenthesizedExpression": true
                                  }
                                }
                              ]
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 17762,
                      "end": 17801,
                      "loc": {
                        "start": {
                          "line": 417,
                          "column": 8
                        },
                        "end": {
                          "line": 417,
                          "column": 47
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 17766,
                        "end": 17782,
                        "loc": {
                          "start": {
                            "line": 417,
                            "column": 12
                          },
                          "end": {
                            "line": 417,
                            "column": 28
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 17766,
                          "end": 17778,
                          "loc": {
                            "start": {
                              "line": 417,
                              "column": 12
                            },
                            "end": {
                              "line": 417,
                              "column": 24
                            }
                          },
                          "name": "axisCellSize"
                        },
                        "operator": "<",
                        "right": {
                          "type": "Literal",
                          "start": 17781,
                          "end": 17782,
                          "loc": {
                            "start": {
                              "line": 417,
                              "column": 27
                            },
                            "end": {
                              "line": 417,
                              "column": 28
                            }
                          },
                          "value": 5,
                          "rawValue": 5,
                          "raw": "5"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 17784,
                        "end": 17801,
                        "loc": {
                          "start": {
                            "line": 417,
                            "column": 30
                          },
                          "end": {
                            "line": 417,
                            "column": 47
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 17784,
                          "end": 17800,
                          "loc": {
                            "start": {
                              "line": 417,
                              "column": 30
                            },
                            "end": {
                              "line": 417,
                              "column": 46
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "Identifier",
                            "start": 17784,
                            "end": 17796,
                            "loc": {
                              "start": {
                                "line": 417,
                                "column": 30
                              },
                              "end": {
                                "line": 417,
                                "column": 42
                              }
                            },
                            "name": "axisCellSize"
                          },
                          "right": {
                            "type": "Literal",
                            "start": 17799,
                            "end": 17800,
                            "loc": {
                              "start": {
                                "line": 417,
                                "column": 45
                              },
                              "end": {
                                "line": 417,
                                "column": 46
                              }
                            },
                            "value": 5,
                            "rawValue": 5,
                            "raw": "5"
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 17810,
                      "end": 17837,
                      "loc": {
                        "start": {
                          "line": 418,
                          "column": 8
                        },
                        "end": {
                          "line": 418,
                          "column": 35
                        }
                      },
                      "argument": {
                        "type": "BinaryExpression",
                        "start": 17817,
                        "end": 17836,
                        "loc": {
                          "start": {
                            "line": 418,
                            "column": 15
                          },
                          "end": {
                            "line": 418,
                            "column": 34
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 17817,
                          "end": 17829,
                          "loc": {
                            "start": {
                              "line": 418,
                              "column": 15
                            },
                            "end": {
                              "line": 418,
                              "column": 27
                            }
                          },
                          "name": "axisCellSize"
                        },
                        "operator": "*",
                        "right": {
                          "type": "Identifier",
                          "start": 17832,
                          "end": 17836,
                          "loc": {
                            "start": {
                              "line": 418,
                              "column": 30
                            },
                            "end": {
                              "line": 418,
                              "column": 34
                            }
                          },
                          "name": "step"
                        }
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 17849,
              "end": 18910,
              "loc": {
                "start": {
                  "line": 421,
                  "column": 4
                },
                "end": {
                  "line": 449,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 17849,
                "end": 17868,
                "loc": {
                  "start": {
                    "line": 421,
                    "column": 4
                  },
                  "end": {
                    "line": 421,
                    "column": 23
                  }
                },
                "name": "getClosestGeomPoint"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 17868,
                "end": 18910,
                "loc": {
                  "start": {
                    "line": 421,
                    "column": 23
                  },
                  "end": {
                    "line": 449,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 17869,
                    "end": 17877,
                    "loc": {
                      "start": {
                        "line": 421,
                        "column": 24
                      },
                      "end": {
                        "line": 421,
                        "column": 32
                      }
                    },
                    "name": "newPoint"
                  },
                  {
                    "type": "Identifier",
                    "start": 17879,
                    "end": 17890,
                    "loc": {
                      "start": {
                        "line": 421,
                        "column": 34
                      },
                      "end": {
                        "line": 421,
                        "column": 45
                      }
                    },
                    "name": "maxDistance"
                  },
                  {
                    "type": "Identifier",
                    "start": 17892,
                    "end": 17904,
                    "loc": {
                      "start": {
                        "line": 421,
                        "column": 47
                      },
                      "end": {
                        "line": 421,
                        "column": 59
                      }
                    },
                    "name": "ignoreFilter"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 17906,
                  "end": 18910,
                  "loc": {
                    "start": {
                      "line": 421,
                      "column": 61
                    },
                    "end": {
                      "line": 449,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 17916,
                      "end": 17994,
                      "loc": {
                        "start": {
                          "line": 422,
                          "column": 8
                        },
                        "end": {
                          "line": 423,
                          "column": 59
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 17920,
                        "end": 17933,
                        "loc": {
                          "start": {
                            "line": 422,
                            "column": 12
                          },
                          "end": {
                            "line": 422,
                            "column": 25
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "Identifier",
                          "start": 17921,
                          "end": 17933,
                          "loc": {
                            "start": {
                              "line": 422,
                              "column": 13
                            },
                            "end": {
                              "line": 422,
                              "column": 25
                            }
                          },
                          "name": "ignoreFilter"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 17947,
                        "end": 17994,
                        "loc": {
                          "start": {
                            "line": 423,
                            "column": 12
                          },
                          "end": {
                            "line": 423,
                            "column": 59
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 17947,
                          "end": 17993,
                          "loc": {
                            "start": {
                              "line": 423,
                              "column": 12
                            },
                            "end": {
                              "line": 423,
                              "column": 58
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "Identifier",
                            "start": 17947,
                            "end": 17959,
                            "loc": {
                              "start": {
                                "line": 423,
                                "column": 12
                              },
                              "end": {
                                "line": 423,
                                "column": 24
                              }
                            },
                            "name": "ignoreFilter"
                          },
                          "right": {
                            "type": "FunctionExpression",
                            "start": 17962,
                            "end": 17993,
                            "loc": {
                              "start": {
                                "line": 423,
                                "column": 27
                              },
                              "end": {
                                "line": 423,
                                "column": 58
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 17971,
                                "end": 17974,
                                "loc": {
                                  "start": {
                                    "line": 423,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 423,
                                    "column": 39
                                  }
                                },
                                "name": "obj"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 17976,
                              "end": 17993,
                              "loc": {
                                "start": {
                                  "line": 423,
                                  "column": 41
                                },
                                "end": {
                                  "line": 423,
                                  "column": 58
                                }
                              },
                              "body": [
                                {
                                  "type": "ReturnStatement",
                                  "start": 17978,
                                  "end": 17991,
                                  "loc": {
                                    "start": {
                                      "line": 423,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 423,
                                      "column": 56
                                    }
                                  },
                                  "argument": {
                                    "type": "Literal",
                                    "start": 17985,
                                    "end": 17990,
                                    "loc": {
                                      "start": {
                                        "line": 423,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 423,
                                        "column": 55
                                      }
                                    },
                                    "value": false,
                                    "rawValue": false,
                                    "raw": "false"
                                  }
                                }
                              ]
                            }
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 18004,
                      "end": 18031,
                      "loc": {
                        "start": {
                          "line": 425,
                          "column": 8
                        },
                        "end": {
                          "line": 425,
                          "column": 35
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 18008,
                          "end": 18030,
                          "loc": {
                            "start": {
                              "line": 425,
                              "column": 12
                            },
                            "end": {
                              "line": 425,
                              "column": 34
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 18008,
                            "end": 18016,
                            "loc": {
                              "start": {
                                "line": 425,
                                "column": 12
                              },
                              "end": {
                                "line": 425,
                                "column": 20
                              }
                            },
                            "name": "distance"
                          },
                          "init": {
                            "type": "Identifier",
                            "start": 18019,
                            "end": 18030,
                            "loc": {
                              "start": {
                                "line": 425,
                                "column": 23
                              },
                              "end": {
                                "line": 425,
                                "column": 34
                              }
                            },
                            "name": "maxDistance"
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 18040,
                      "end": 18076,
                      "loc": {
                        "start": {
                          "line": 426,
                          "column": 8
                        },
                        "end": {
                          "line": 426,
                          "column": 44
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 18044,
                          "end": 18075,
                          "loc": {
                            "start": {
                              "line": 426,
                              "column": 12
                            },
                            "end": {
                              "line": 426,
                              "column": 43
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 18044,
                            "end": 18056,
                            "loc": {
                              "start": {
                                "line": 426,
                                "column": 12
                              },
                              "end": {
                                "line": 426,
                                "column": 24
                              }
                            },
                            "name": "closestPoint"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 18059,
                            "end": 18075,
                            "loc": {
                              "start": {
                                "line": 426,
                                "column": 27
                              },
                              "end": {
                                "line": 426,
                                "column": 43
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 18059,
                              "end": 18073,
                              "loc": {
                                "start": {
                                  "line": 426,
                                  "column": 27
                                },
                                "end": {
                                  "line": 426,
                                  "column": 41
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 18059,
                                "end": 18067,
                                "loc": {
                                  "start": {
                                    "line": 426,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 426,
                                    "column": 35
                                  }
                                },
                                "name": "newPoint"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 18068,
                                "end": 18073,
                                "loc": {
                                  "start": {
                                    "line": 426,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 426,
                                    "column": 41
                                  }
                                },
                                "name": "clone"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 18085,
                      "end": 18107,
                      "loc": {
                        "start": {
                          "line": 427,
                          "column": 8
                        },
                        "end": {
                          "line": 427,
                          "column": 30
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 18089,
                          "end": 18106,
                          "loc": {
                            "start": {
                              "line": 427,
                              "column": 12
                            },
                            "end": {
                              "line": 427,
                              "column": 29
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 18089,
                            "end": 18098,
                            "loc": {
                              "start": {
                                "line": 427,
                                "column": 12
                              },
                              "end": {
                                "line": 427,
                                "column": 21
                              }
                            },
                            "name": "isSnapped"
                          },
                          "init": {
                            "type": "Literal",
                            "start": 18101,
                            "end": 18106,
                            "loc": {
                              "start": {
                                "line": 427,
                                "column": 24
                              },
                              "end": {
                                "line": 427,
                                "column": 29
                              }
                            },
                            "value": false,
                            "rawValue": false,
                            "raw": "false"
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 18116,
                      "end": 18736,
                      "loc": {
                        "start": {
                          "line": 428,
                          "column": 8
                        },
                        "end": {
                          "line": 442,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 18116,
                        "end": 18735,
                        "loc": {
                          "start": {
                            "line": 428,
                            "column": 8
                          },
                          "end": {
                            "line": 442,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 18116,
                          "end": 18149,
                          "loc": {
                            "start": {
                              "line": 428,
                              "column": 8
                            },
                            "end": {
                              "line": 428,
                              "column": 41
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 18116,
                            "end": 18141,
                            "loc": {
                              "start": {
                                "line": 428,
                                "column": 8
                              },
                              "end": {
                                "line": 428,
                                "column": 33
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 18116,
                              "end": 18139,
                              "loc": {
                                "start": {
                                  "line": 428,
                                  "column": 8
                                },
                                "end": {
                                  "line": 428,
                                  "column": 31
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 18116,
                                "end": 18120,
                                "loc": {
                                  "start": {
                                    "line": 428,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 428,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 18121,
                                "end": 18139,
                                "loc": {
                                  "start": {
                                    "line": 428,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 428,
                                    "column": 31
                                  }
                                },
                                "name": "getObjectsOnSketch"
                              },
                              "computed": false
                            },
                            "arguments": []
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 18142,
                            "end": 18149,
                            "loc": {
                              "start": {
                                "line": 428,
                                "column": 34
                              },
                              "end": {
                                "line": 428,
                                "column": 41
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 18150,
                            "end": 18734,
                            "loc": {
                              "start": {
                                "line": 428,
                                "column": 42
                              },
                              "end": {
                                "line": 442,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 18150,
                                "end": 18153,
                                "loc": {
                                  "start": {
                                    "line": 428,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 428,
                                    "column": 45
                                  }
                                },
                                "name": "obj"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 18158,
                              "end": 18734,
                              "loc": {
                                "start": {
                                  "line": 428,
                                  "column": 50
                                },
                                "end": {
                                  "line": 442,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 18172,
                                  "end": 18724,
                                  "loc": {
                                    "start": {
                                      "line": 429,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 441,
                                      "column": 15
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 18172,
                                    "end": 18723,
                                    "loc": {
                                      "start": {
                                        "line": 429,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 441,
                                        "column": 14
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 18172,
                                      "end": 18201,
                                      "loc": {
                                        "start": {
                                          "line": 429,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 429,
                                          "column": 41
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 18172,
                                        "end": 18178,
                                        "loc": {
                                          "start": {
                                            "line": 429,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 429,
                                            "column": 18
                                          }
                                        },
                                        "name": "Sketch"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 18179,
                                        "end": 18201,
                                        "loc": {
                                          "start": {
                                            "line": 429,
                                            "column": 19
                                          },
                                          "end": {
                                            "line": 429,
                                            "column": 41
                                          }
                                        },
                                        "name": "ForObjectsWithChildren"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 18202,
                                        "end": 18205,
                                        "loc": {
                                          "start": {
                                            "line": 429,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 429,
                                            "column": 45
                                          }
                                        },
                                        "name": "obj"
                                      },
                                      {
                                        "type": "FunctionExpression",
                                        "start": 18207,
                                        "end": 18722,
                                        "loc": {
                                          "start": {
                                            "line": 429,
                                            "column": 47
                                          },
                                          "end": {
                                            "line": 441,
                                            "column": 13
                                          }
                                        },
                                        "id": null,
                                        "generator": false,
                                        "expression": false,
                                        "async": false,
                                        "params": [
                                          {
                                            "type": "Identifier",
                                            "start": 18216,
                                            "end": 18221,
                                            "loc": {
                                              "start": {
                                                "line": 429,
                                                "column": 56
                                              },
                                              "end": {
                                                "line": 429,
                                                "column": 61
                                              }
                                            },
                                            "name": "child"
                                          }
                                        ],
                                        "body": {
                                          "type": "BlockStatement",
                                          "start": 18223,
                                          "end": 18722,
                                          "loc": {
                                            "start": {
                                              "line": 429,
                                              "column": 63
                                            },
                                            "end": {
                                              "line": 441,
                                              "column": 13
                                            }
                                          },
                                          "body": [
                                            {
                                              "type": "IfStatement",
                                              "start": 18241,
                                              "end": 18293,
                                              "loc": {
                                                "start": {
                                                  "line": 430,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 431,
                                                  "column": 27
                                                }
                                              },
                                              "test": {
                                                "type": "CallExpression",
                                                "start": 18245,
                                                "end": 18264,
                                                "loc": {
                                                  "start": {
                                                    "line": 430,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 430,
                                                    "column": 39
                                                  }
                                                },
                                                "callee": {
                                                  "type": "Identifier",
                                                  "start": 18245,
                                                  "end": 18257,
                                                  "loc": {
                                                    "start": {
                                                      "line": 430,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 430,
                                                      "column": 32
                                                    }
                                                  },
                                                  "name": "ignoreFilter"
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 18258,
                                                    "end": 18263,
                                                    "loc": {
                                                      "start": {
                                                        "line": 430,
                                                        "column": 33
                                                      },
                                                      "end": {
                                                        "line": 430,
                                                        "column": 38
                                                      }
                                                    },
                                                    "name": "child"
                                                  }
                                                ]
                                              },
                                              "consequent": {
                                                "type": "ReturnStatement",
                                                "start": 18286,
                                                "end": 18293,
                                                "loc": {
                                                  "start": {
                                                    "line": 431,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 431,
                                                    "column": 27
                                                  }
                                                },
                                                "argument": null
                                              },
                                              "alternate": null
                                            },
                                            {
                                              "type": "IfStatement",
                                              "start": 18310,
                                              "end": 18708,
                                              "loc": {
                                                "start": {
                                                  "line": 432,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 440,
                                                  "column": 17
                                                }
                                              },
                                              "test": {
                                                "type": "BinaryExpression",
                                                "start": 18314,
                                                "end": 18336,
                                                "loc": {
                                                  "start": {
                                                    "line": 432,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 432,
                                                    "column": 42
                                                  }
                                                },
                                                "left": {
                                                  "type": "Identifier",
                                                  "start": 18314,
                                                  "end": 18319,
                                                  "loc": {
                                                    "start": {
                                                      "line": 432,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 432,
                                                      "column": 25
                                                    }
                                                  },
                                                  "name": "child"
                                                },
                                                "operator": "instanceof",
                                                "right": {
                                                  "type": "Identifier",
                                                  "start": 18331,
                                                  "end": 18336,
                                                  "loc": {
                                                    "start": {
                                                      "line": 432,
                                                      "column": 37
                                                    },
                                                    "end": {
                                                      "line": 432,
                                                      "column": 42
                                                    }
                                                  },
                                                  "name": "Point"
                                                }
                                              },
                                              "consequent": {
                                                "type": "BlockStatement",
                                                "start": 18338,
                                                "end": 18708,
                                                "loc": {
                                                  "start": {
                                                    "line": 432,
                                                    "column": 44
                                                  },
                                                  "end": {
                                                    "line": 440,
                                                    "column": 17
                                                  }
                                                },
                                                "body": [
                                                  {
                                                    "type": "VariableDeclaration",
                                                    "start": 18360,
                                                    "end": 18378,
                                                    "loc": {
                                                      "start": {
                                                        "line": 433,
                                                        "column": 20
                                                      },
                                                      "end": {
                                                        "line": 433,
                                                        "column": 38
                                                      }
                                                    },
                                                    "declarations": [
                                                      {
                                                        "type": "VariableDeclarator",
                                                        "start": 18364,
                                                        "end": 18377,
                                                        "loc": {
                                                          "start": {
                                                            "line": 433,
                                                            "column": 24
                                                          },
                                                          "end": {
                                                            "line": 433,
                                                            "column": 37
                                                          }
                                                        },
                                                        "id": {
                                                          "type": "Identifier",
                                                          "start": 18364,
                                                          "end": 18369,
                                                          "loc": {
                                                            "start": {
                                                              "line": 433,
                                                              "column": 24
                                                            },
                                                            "end": {
                                                              "line": 433,
                                                              "column": 29
                                                            }
                                                          },
                                                          "name": "point"
                                                        },
                                                        "init": {
                                                          "type": "Identifier",
                                                          "start": 18372,
                                                          "end": 18377,
                                                          "loc": {
                                                            "start": {
                                                              "line": 433,
                                                              "column": 32
                                                            },
                                                            "end": {
                                                              "line": 433,
                                                              "column": 37
                                                            }
                                                          },
                                                          "name": "child"
                                                        }
                                                      }
                                                    ],
                                                    "kind": "var"
                                                  },
                                                  {
                                                    "type": "VariableDeclaration",
                                                    "start": 18399,
                                                    "end": 18457,
                                                    "loc": {
                                                      "start": {
                                                        "line": 434,
                                                        "column": 20
                                                      },
                                                      "end": {
                                                        "line": 434,
                                                        "column": 78
                                                      }
                                                    },
                                                    "declarations": [
                                                      {
                                                        "type": "VariableDeclarator",
                                                        "start": 18403,
                                                        "end": 18456,
                                                        "loc": {
                                                          "start": {
                                                            "line": 434,
                                                            "column": 24
                                                          },
                                                          "end": {
                                                            "line": 434,
                                                            "column": 77
                                                          }
                                                        },
                                                        "id": {
                                                          "type": "Identifier",
                                                          "start": 18403,
                                                          "end": 18418,
                                                          "loc": {
                                                            "start": {
                                                              "line": 434,
                                                              "column": 24
                                                            },
                                                            "end": {
                                                              "line": 434,
                                                              "column": 39
                                                            }
                                                          },
                                                          "name": "currentDistance"
                                                        },
                                                        "init": {
                                                          "type": "CallExpression",
                                                          "start": 18421,
                                                          "end": 18456,
                                                          "loc": {
                                                            "start": {
                                                              "line": 434,
                                                              "column": 42
                                                            },
                                                            "end": {
                                                              "line": 434,
                                                              "column": 77
                                                            }
                                                          },
                                                          "callee": {
                                                            "type": "MemberExpression",
                                                            "start": 18421,
                                                            "end": 18446,
                                                            "loc": {
                                                              "start": {
                                                                "line": 434,
                                                                "column": 42
                                                              },
                                                              "end": {
                                                                "line": 434,
                                                                "column": 67
                                                              }
                                                            },
                                                            "object": {
                                                              "type": "MemberExpression",
                                                              "start": 18421,
                                                              "end": 18435,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 434,
                                                                  "column": 42
                                                                },
                                                                "end": {
                                                                  "line": 434,
                                                                  "column": 56
                                                                }
                                                              },
                                                              "object": {
                                                                "type": "Identifier",
                                                                "start": 18421,
                                                                "end": 18426,
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 434,
                                                                    "column": 42
                                                                  },
                                                                  "end": {
                                                                    "line": 434,
                                                                    "column": 47
                                                                  }
                                                                },
                                                                "name": "point"
                                                              },
                                                              "property": {
                                                                "type": "Identifier",
                                                                "start": 18427,
                                                                "end": 18435,
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 434,
                                                                    "column": 48
                                                                  },
                                                                  "end": {
                                                                    "line": 434,
                                                                    "column": 56
                                                                  }
                                                                },
                                                                "name": "position"
                                                              },
                                                              "computed": false
                                                            },
                                                            "property": {
                                                              "type": "Identifier",
                                                              "start": 18436,
                                                              "end": 18446,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 434,
                                                                  "column": 57
                                                                },
                                                                "end": {
                                                                  "line": 434,
                                                                  "column": 67
                                                                }
                                                              },
                                                              "name": "distanceTo"
                                                            },
                                                            "computed": false
                                                          },
                                                          "arguments": [
                                                            {
                                                              "type": "Identifier",
                                                              "start": 18447,
                                                              "end": 18455,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 434,
                                                                  "column": 68
                                                                },
                                                                "end": {
                                                                  "line": 434,
                                                                  "column": 76
                                                                }
                                                              },
                                                              "name": "newPoint"
                                                            }
                                                          ]
                                                        }
                                                      }
                                                    ],
                                                    "kind": "var"
                                                  },
                                                  {
                                                    "type": "IfStatement",
                                                    "start": 18478,
                                                    "end": 18690,
                                                    "loc": {
                                                      "start": {
                                                        "line": 435,
                                                        "column": 20
                                                      },
                                                      "end": {
                                                        "line": 439,
                                                        "column": 21
                                                      }
                                                    },
                                                    "test": {
                                                      "type": "BinaryExpression",
                                                      "start": 18482,
                                                      "end": 18508,
                                                      "loc": {
                                                        "start": {
                                                          "line": 435,
                                                          "column": 24
                                                        },
                                                        "end": {
                                                          "line": 435,
                                                          "column": 50
                                                        }
                                                      },
                                                      "left": {
                                                        "type": "Identifier",
                                                        "start": 18482,
                                                        "end": 18497,
                                                        "loc": {
                                                          "start": {
                                                            "line": 435,
                                                            "column": 24
                                                          },
                                                          "end": {
                                                            "line": 435,
                                                            "column": 39
                                                          }
                                                        },
                                                        "name": "currentDistance"
                                                      },
                                                      "operator": "<",
                                                      "right": {
                                                        "type": "Identifier",
                                                        "start": 18500,
                                                        "end": 18508,
                                                        "loc": {
                                                          "start": {
                                                            "line": 435,
                                                            "column": 42
                                                          },
                                                          "end": {
                                                            "line": 435,
                                                            "column": 50
                                                          }
                                                        },
                                                        "name": "distance"
                                                      }
                                                    },
                                                    "consequent": {
                                                      "type": "BlockStatement",
                                                      "start": 18510,
                                                      "end": 18690,
                                                      "loc": {
                                                        "start": {
                                                          "line": 435,
                                                          "column": 52
                                                        },
                                                        "end": {
                                                          "line": 439,
                                                          "column": 21
                                                        }
                                                      },
                                                      "body": [
                                                        {
                                                          "type": "ExpressionStatement",
                                                          "start": 18536,
                                                          "end": 18563,
                                                          "loc": {
                                                            "start": {
                                                              "line": 436,
                                                              "column": 24
                                                            },
                                                            "end": {
                                                              "line": 436,
                                                              "column": 51
                                                            }
                                                          },
                                                          "expression": {
                                                            "type": "AssignmentExpression",
                                                            "start": 18536,
                                                            "end": 18562,
                                                            "loc": {
                                                              "start": {
                                                                "line": 436,
                                                                "column": 24
                                                              },
                                                              "end": {
                                                                "line": 436,
                                                                "column": 50
                                                              }
                                                            },
                                                            "operator": "=",
                                                            "left": {
                                                              "type": "Identifier",
                                                              "start": 18536,
                                                              "end": 18544,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 436,
                                                                  "column": 24
                                                                },
                                                                "end": {
                                                                  "line": 436,
                                                                  "column": 32
                                                                }
                                                              },
                                                              "name": "distance"
                                                            },
                                                            "right": {
                                                              "type": "Identifier",
                                                              "start": 18547,
                                                              "end": 18562,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 436,
                                                                  "column": 35
                                                                },
                                                                "end": {
                                                                  "line": 436,
                                                                  "column": 50
                                                                }
                                                              },
                                                              "name": "currentDistance"
                                                            }
                                                          }
                                                        },
                                                        {
                                                          "type": "ExpressionStatement",
                                                          "start": 18588,
                                                          "end": 18626,
                                                          "loc": {
                                                            "start": {
                                                              "line": 437,
                                                              "column": 24
                                                            },
                                                            "end": {
                                                              "line": 437,
                                                              "column": 62
                                                            }
                                                          },
                                                          "expression": {
                                                            "type": "AssignmentExpression",
                                                            "start": 18588,
                                                            "end": 18625,
                                                            "loc": {
                                                              "start": {
                                                                "line": 437,
                                                                "column": 24
                                                              },
                                                              "end": {
                                                                "line": 437,
                                                                "column": 61
                                                              }
                                                            },
                                                            "operator": "=",
                                                            "left": {
                                                              "type": "Identifier",
                                                              "start": 18588,
                                                              "end": 18600,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 437,
                                                                  "column": 24
                                                                },
                                                                "end": {
                                                                  "line": 437,
                                                                  "column": 36
                                                                }
                                                              },
                                                              "name": "closestPoint"
                                                            },
                                                            "right": {
                                                              "type": "CallExpression",
                                                              "start": 18603,
                                                              "end": 18625,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 437,
                                                                  "column": 39
                                                                },
                                                                "end": {
                                                                  "line": 437,
                                                                  "column": 61
                                                                }
                                                              },
                                                              "callee": {
                                                                "type": "MemberExpression",
                                                                "start": 18603,
                                                                "end": 18623,
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 437,
                                                                    "column": 39
                                                                  },
                                                                  "end": {
                                                                    "line": 437,
                                                                    "column": 59
                                                                  }
                                                                },
                                                                "object": {
                                                                  "type": "MemberExpression",
                                                                  "start": 18603,
                                                                  "end": 18617,
                                                                  "loc": {
                                                                    "start": {
                                                                      "line": 437,
                                                                      "column": 39
                                                                    },
                                                                    "end": {
                                                                      "line": 437,
                                                                      "column": 53
                                                                    }
                                                                  },
                                                                  "object": {
                                                                    "type": "Identifier",
                                                                    "start": 18603,
                                                                    "end": 18608,
                                                                    "loc": {
                                                                      "start": {
                                                                        "line": 437,
                                                                        "column": 39
                                                                      },
                                                                      "end": {
                                                                        "line": 437,
                                                                        "column": 44
                                                                      }
                                                                    },
                                                                    "name": "point"
                                                                  },
                                                                  "property": {
                                                                    "type": "Identifier",
                                                                    "start": 18609,
                                                                    "end": 18617,
                                                                    "loc": {
                                                                      "start": {
                                                                        "line": 437,
                                                                        "column": 45
                                                                      },
                                                                      "end": {
                                                                        "line": 437,
                                                                        "column": 53
                                                                      }
                                                                    },
                                                                    "name": "position"
                                                                  },
                                                                  "computed": false
                                                                },
                                                                "property": {
                                                                  "type": "Identifier",
                                                                  "start": 18618,
                                                                  "end": 18623,
                                                                  "loc": {
                                                                    "start": {
                                                                      "line": 437,
                                                                      "column": 54
                                                                    },
                                                                    "end": {
                                                                      "line": 437,
                                                                      "column": 59
                                                                    }
                                                                  },
                                                                  "name": "clone"
                                                                },
                                                                "computed": false
                                                              },
                                                              "arguments": []
                                                            }
                                                          }
                                                        },
                                                        {
                                                          "type": "ExpressionStatement",
                                                          "start": 18651,
                                                          "end": 18668,
                                                          "loc": {
                                                            "start": {
                                                              "line": 438,
                                                              "column": 24
                                                            },
                                                            "end": {
                                                              "line": 438,
                                                              "column": 41
                                                            }
                                                          },
                                                          "expression": {
                                                            "type": "AssignmentExpression",
                                                            "start": 18651,
                                                            "end": 18667,
                                                            "loc": {
                                                              "start": {
                                                                "line": 438,
                                                                "column": 24
                                                              },
                                                              "end": {
                                                                "line": 438,
                                                                "column": 40
                                                              }
                                                            },
                                                            "operator": "=",
                                                            "left": {
                                                              "type": "Identifier",
                                                              "start": 18651,
                                                              "end": 18660,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 438,
                                                                  "column": 24
                                                                },
                                                                "end": {
                                                                  "line": 438,
                                                                  "column": 33
                                                                }
                                                              },
                                                              "name": "isSnapped"
                                                            },
                                                            "right": {
                                                              "type": "Literal",
                                                              "start": 18663,
                                                              "end": 18667,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 438,
                                                                  "column": 36
                                                                },
                                                                "end": {
                                                                  "line": 438,
                                                                  "column": 40
                                                                }
                                                              },
                                                              "value": true,
                                                              "rawValue": true,
                                                              "raw": "true"
                                                            }
                                                          }
                                                        }
                                                      ]
                                                    },
                                                    "alternate": null
                                                  }
                                                ]
                                              },
                                              "alternate": null
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  }
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 18746,
                      "end": 18904,
                      "loc": {
                        "start": {
                          "line": 444,
                          "column": 8
                        },
                        "end": {
                          "line": 448,
                          "column": 10
                        }
                      },
                      "argument": {
                        "type": "ObjectExpression",
                        "start": 18753,
                        "end": 18903,
                        "loc": {
                          "start": {
                            "line": 444,
                            "column": 15
                          },
                          "end": {
                            "line": 448,
                            "column": 9
                          }
                        },
                        "properties": [
                          {
                            "type": "Property",
                            "start": 18767,
                            "end": 18796,
                            "loc": {
                              "start": {
                                "line": 445,
                                "column": 12
                              },
                              "end": {
                                "line": 445,
                                "column": 41
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 18767,
                              "end": 18782,
                              "loc": {
                                "start": {
                                  "line": 445,
                                  "column": 12
                                },
                                "end": {
                                  "line": 445,
                                  "column": 27
                                }
                              },
                              "name": "snappedPosition"
                            },
                            "value": {
                              "type": "Identifier",
                              "start": 18784,
                              "end": 18796,
                              "loc": {
                                "start": {
                                  "line": 445,
                                  "column": 29
                                },
                                "end": {
                                  "line": 445,
                                  "column": 41
                                }
                              },
                              "name": "closestPoint"
                            },
                            "kind": "init"
                          },
                          {
                            "type": "Property",
                            "start": 18810,
                            "end": 18859,
                            "loc": {
                              "start": {
                                "line": 446,
                                "column": 12
                              },
                              "end": {
                                "line": 446,
                                "column": 61
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 18810,
                              "end": 18823,
                              "loc": {
                                "start": {
                                  "line": 446,
                                  "column": 12
                                },
                                "end": {
                                  "line": 446,
                                  "column": 25
                                }
                              },
                              "name": "snappingShift"
                            },
                            "value": {
                              "type": "CallExpression",
                              "start": 18825,
                              "end": 18859,
                              "loc": {
                                "start": {
                                  "line": 446,
                                  "column": 27
                                },
                                "end": {
                                  "line": 446,
                                  "column": 61
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 18825,
                                "end": 18849,
                                "loc": {
                                  "start": {
                                    "line": 446,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 446,
                                    "column": 51
                                  }
                                },
                                "object": {
                                  "type": "CallExpression",
                                  "start": 18825,
                                  "end": 18845,
                                  "loc": {
                                    "start": {
                                      "line": 446,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 446,
                                      "column": 47
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 18825,
                                    "end": 18843,
                                    "loc": {
                                      "start": {
                                        "line": 446,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 446,
                                        "column": 45
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 18825,
                                      "end": 18837,
                                      "loc": {
                                        "start": {
                                          "line": 446,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 446,
                                          "column": 39
                                        }
                                      },
                                      "name": "closestPoint"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 18838,
                                      "end": 18843,
                                      "loc": {
                                        "start": {
                                          "line": 446,
                                          "column": 40
                                        },
                                        "end": {
                                          "line": 446,
                                          "column": 45
                                        }
                                      },
                                      "name": "clone"
                                    },
                                    "computed": false
                                  },
                                  "arguments": []
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 18846,
                                  "end": 18849,
                                  "loc": {
                                    "start": {
                                      "line": 446,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 446,
                                      "column": 51
                                    }
                                  },
                                  "name": "sub"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 18850,
                                  "end": 18858,
                                  "loc": {
                                    "start": {
                                      "line": 446,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 446,
                                      "column": 60
                                    }
                                  },
                                  "name": "newPoint"
                                }
                              ]
                            },
                            "kind": "init"
                          },
                          {
                            "type": "Property",
                            "start": 18873,
                            "end": 18893,
                            "loc": {
                              "start": {
                                "line": 447,
                                "column": 12
                              },
                              "end": {
                                "line": 447,
                                "column": 32
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 18873,
                              "end": 18882,
                              "loc": {
                                "start": {
                                  "line": 447,
                                  "column": 12
                                },
                                "end": {
                                  "line": 447,
                                  "column": 21
                                }
                              },
                              "name": "isSnapped"
                            },
                            "value": {
                              "type": "Identifier",
                              "start": 18884,
                              "end": 18893,
                              "loc": {
                                "start": {
                                  "line": 447,
                                  "column": 23
                                },
                                "end": {
                                  "line": 447,
                                  "column": 32
                                }
                              },
                              "name": "isSnapped"
                            },
                            "kind": "init"
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 18916,
              "end": 19723,
              "loc": {
                "start": {
                  "line": 451,
                  "column": 4
                },
                "end": {
                  "line": 470,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 18916,
                "end": 18935,
                "loc": {
                  "start": {
                    "line": 451,
                    "column": 4
                  },
                  "end": {
                    "line": 451,
                    "column": 23
                  }
                },
                "name": "getClosestGridPoint"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 18935,
                "end": 19723,
                "loc": {
                  "start": {
                    "line": 451,
                    "column": 23
                  },
                  "end": {
                    "line": 470,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 18936,
                    "end": 18944,
                    "loc": {
                      "start": {
                        "line": 451,
                        "column": 24
                      },
                      "end": {
                        "line": 451,
                        "column": 32
                      }
                    },
                    "name": "newPoint"
                  },
                  {
                    "type": "Identifier",
                    "start": 18946,
                    "end": 18957,
                    "loc": {
                      "start": {
                        "line": 451,
                        "column": 34
                      },
                      "end": {
                        "line": 451,
                        "column": 45
                      }
                    },
                    "name": "maxDistance"
                  },
                  {
                    "type": "Identifier",
                    "start": 18959,
                    "end": 18971,
                    "loc": {
                      "start": {
                        "line": 451,
                        "column": 47
                      },
                      "end": {
                        "line": 451,
                        "column": 59
                      }
                    },
                    "name": "ignoreFilter"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 18973,
                  "end": 19723,
                  "loc": {
                    "start": {
                      "line": 451,
                      "column": 61
                    },
                    "end": {
                      "line": 470,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 18983,
                      "end": 19019,
                      "loc": {
                        "start": {
                          "line": 452,
                          "column": 8
                        },
                        "end": {
                          "line": 452,
                          "column": 44
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 18987,
                          "end": 19018,
                          "loc": {
                            "start": {
                              "line": 452,
                              "column": 12
                            },
                            "end": {
                              "line": 452,
                              "column": 43
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 18987,
                            "end": 18999,
                            "loc": {
                              "start": {
                                "line": 452,
                                "column": 12
                              },
                              "end": {
                                "line": 452,
                                "column": 24
                              }
                            },
                            "name": "closestPoint"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 19002,
                            "end": 19018,
                            "loc": {
                              "start": {
                                "line": 452,
                                "column": 27
                              },
                              "end": {
                                "line": 452,
                                "column": 43
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 19002,
                              "end": 19016,
                              "loc": {
                                "start": {
                                  "line": 452,
                                  "column": 27
                                },
                                "end": {
                                  "line": 452,
                                  "column": 41
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 19002,
                                "end": 19010,
                                "loc": {
                                  "start": {
                                    "line": 452,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 452,
                                    "column": 35
                                  }
                                },
                                "name": "newPoint"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 19011,
                                "end": 19016,
                                "loc": {
                                  "start": {
                                    "line": 452,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 452,
                                    "column": 41
                                  }
                                },
                                "name": "clone"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 19028,
                      "end": 19050,
                      "loc": {
                        "start": {
                          "line": 453,
                          "column": 8
                        },
                        "end": {
                          "line": 453,
                          "column": 30
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 19032,
                          "end": 19049,
                          "loc": {
                            "start": {
                              "line": 453,
                              "column": 12
                            },
                            "end": {
                              "line": 453,
                              "column": 29
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 19032,
                            "end": 19041,
                            "loc": {
                              "start": {
                                "line": 453,
                                "column": 12
                              },
                              "end": {
                                "line": 453,
                                "column": 21
                              }
                            },
                            "name": "isSnapped"
                          },
                          "init": {
                            "type": "Literal",
                            "start": 19044,
                            "end": 19049,
                            "loc": {
                              "start": {
                                "line": 453,
                                "column": 24
                              },
                              "end": {
                                "line": 453,
                                "column": 29
                              }
                            },
                            "value": false,
                            "rawValue": false,
                            "raw": "false"
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 19059,
                      "end": 19549,
                      "loc": {
                        "start": {
                          "line": 454,
                          "column": 8
                        },
                        "end": {
                          "line": 463,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 19063,
                        "end": 19082,
                        "loc": {
                          "start": {
                            "line": 454,
                            "column": 12
                          },
                          "end": {
                            "line": 454,
                            "column": 31
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 19063,
                          "end": 19076,
                          "loc": {
                            "start": {
                              "line": 454,
                              "column": 12
                            },
                            "end": {
                              "line": 454,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 19063,
                            "end": 19067,
                            "loc": {
                              "start": {
                                "line": 454,
                                "column": 12
                              },
                              "end": {
                                "line": 454,
                                "column": 16
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 19068,
                            "end": 19076,
                            "loc": {
                              "start": {
                                "line": 454,
                                "column": 17
                              },
                              "end": {
                                "line": 454,
                                "column": 25
                              }
                            },
                            "name": "gridStep"
                          },
                          "computed": false
                        },
                        "operator": ">",
                        "right": {
                          "type": "Literal",
                          "start": 19079,
                          "end": 19082,
                          "loc": {
                            "start": {
                              "line": 454,
                              "column": 28
                            },
                            "end": {
                              "line": 454,
                              "column": 31
                            }
                          },
                          "value": 0,
                          "rawValue": 0,
                          "raw": "0.0"
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 19084,
                        "end": 19549,
                        "loc": {
                          "start": {
                            "line": 454,
                            "column": 33
                          },
                          "end": {
                            "line": 463,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 19098,
                            "end": 19156,
                            "loc": {
                              "start": {
                                "line": 455,
                                "column": 12
                              },
                              "end": {
                                "line": 455,
                                "column": 70
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 19102,
                                "end": 19155,
                                "loc": {
                                  "start": {
                                    "line": 455,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 455,
                                    "column": 69
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 19102,
                                  "end": 19110,
                                  "loc": {
                                    "start": {
                                      "line": 455,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 455,
                                      "column": 24
                                    }
                                  },
                                  "name": "distance"
                                },
                                "init": {
                                  "type": "CallExpression",
                                  "start": 19113,
                                  "end": 19155,
                                  "loc": {
                                    "start": {
                                      "line": 455,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 455,
                                      "column": 69
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 19113,
                                    "end": 19121,
                                    "loc": {
                                      "start": {
                                        "line": 455,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 455,
                                        "column": 35
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 19113,
                                      "end": 19117,
                                      "loc": {
                                        "start": {
                                          "line": 455,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 455,
                                          "column": 31
                                        }
                                      },
                                      "name": "Math"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 19118,
                                      "end": 19121,
                                      "loc": {
                                        "start": {
                                          "line": 455,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 455,
                                          "column": 35
                                        }
                                      },
                                      "name": "min"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 19122,
                                      "end": 19133,
                                      "loc": {
                                        "start": {
                                          "line": 455,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 455,
                                          "column": 47
                                        }
                                      },
                                      "name": "maxDistance"
                                    },
                                    {
                                      "type": "BinaryExpression",
                                      "start": 19135,
                                      "end": 19154,
                                      "loc": {
                                        "start": {
                                          "line": 455,
                                          "column": 49
                                        },
                                        "end": {
                                          "line": 455,
                                          "column": 68
                                        }
                                      },
                                      "left": {
                                        "type": "MemberExpression",
                                        "start": 19135,
                                        "end": 19148,
                                        "loc": {
                                          "start": {
                                            "line": 455,
                                            "column": 49
                                          },
                                          "end": {
                                            "line": 455,
                                            "column": 62
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 19135,
                                          "end": 19139,
                                          "loc": {
                                            "start": {
                                              "line": 455,
                                              "column": 49
                                            },
                                            "end": {
                                              "line": 455,
                                              "column": 53
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 19140,
                                          "end": 19148,
                                          "loc": {
                                            "start": {
                                              "line": 455,
                                              "column": 54
                                            },
                                            "end": {
                                              "line": 455,
                                              "column": 62
                                            }
                                          },
                                          "name": "gridStep"
                                        },
                                        "computed": false
                                      },
                                      "operator": "/",
                                      "right": {
                                        "type": "Literal",
                                        "start": 19151,
                                        "end": 19154,
                                        "loc": {
                                          "start": {
                                            "line": 455,
                                            "column": 65
                                          },
                                          "end": {
                                            "line": 455,
                                            "column": 68
                                          }
                                        },
                                        "value": 3,
                                        "rawValue": 3,
                                        "raw": "3.0"
                                      }
                                    }
                                  ]
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 19169,
                            "end": 19232,
                            "loc": {
                              "start": {
                                "line": 456,
                                "column": 12
                              },
                              "end": {
                                "line": 456,
                                "column": 75
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 19173,
                                "end": 19231,
                                "loc": {
                                  "start": {
                                    "line": 456,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 456,
                                    "column": 74
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 19173,
                                  "end": 19174,
                                  "loc": {
                                    "start": {
                                      "line": 456,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 456,
                                      "column": 17
                                    }
                                  },
                                  "name": "x"
                                },
                                "init": {
                                  "type": "BinaryExpression",
                                  "start": 19177,
                                  "end": 19231,
                                  "loc": {
                                    "start": {
                                      "line": 456,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 456,
                                      "column": 74
                                    }
                                  },
                                  "left": {
                                    "type": "CallExpression",
                                    "start": 19177,
                                    "end": 19215,
                                    "loc": {
                                      "start": {
                                        "line": 456,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 456,
                                        "column": 58
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 19177,
                                      "end": 19187,
                                      "loc": {
                                        "start": {
                                          "line": 456,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 456,
                                          "column": 30
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 19177,
                                        "end": 19181,
                                        "loc": {
                                          "start": {
                                            "line": 456,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 456,
                                            "column": 24
                                          }
                                        },
                                        "name": "Math"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 19182,
                                        "end": 19187,
                                        "loc": {
                                          "start": {
                                            "line": 456,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 456,
                                            "column": 30
                                          }
                                        },
                                        "name": "round"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 19188,
                                        "end": 19214,
                                        "loc": {
                                          "start": {
                                            "line": 456,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 456,
                                            "column": 57
                                          }
                                        },
                                        "left": {
                                          "type": "MemberExpression",
                                          "start": 19188,
                                          "end": 19198,
                                          "loc": {
                                            "start": {
                                              "line": 456,
                                              "column": 31
                                            },
                                            "end": {
                                              "line": 456,
                                              "column": 41
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 19188,
                                            "end": 19196,
                                            "loc": {
                                              "start": {
                                                "line": 456,
                                                "column": 31
                                              },
                                              "end": {
                                                "line": 456,
                                                "column": 39
                                              }
                                            },
                                            "name": "newPoint"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 19197,
                                            "end": 19198,
                                            "loc": {
                                              "start": {
                                                "line": 456,
                                                "column": 40
                                              },
                                              "end": {
                                                "line": 456,
                                                "column": 41
                                              }
                                            },
                                            "name": "x"
                                          },
                                          "computed": false
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "MemberExpression",
                                          "start": 19201,
                                          "end": 19214,
                                          "loc": {
                                            "start": {
                                              "line": 456,
                                              "column": 44
                                            },
                                            "end": {
                                              "line": 456,
                                              "column": 57
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 19201,
                                            "end": 19205,
                                            "loc": {
                                              "start": {
                                                "line": 456,
                                                "column": 44
                                              },
                                              "end": {
                                                "line": 456,
                                                "column": 48
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 19206,
                                            "end": 19214,
                                            "loc": {
                                              "start": {
                                                "line": 456,
                                                "column": 49
                                              },
                                              "end": {
                                                "line": 456,
                                                "column": 57
                                              }
                                            },
                                            "name": "gridStep"
                                          },
                                          "computed": false
                                        }
                                      }
                                    ]
                                  },
                                  "operator": "*",
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 19218,
                                    "end": 19231,
                                    "loc": {
                                      "start": {
                                        "line": 456,
                                        "column": 61
                                      },
                                      "end": {
                                        "line": 456,
                                        "column": 74
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 19218,
                                      "end": 19222,
                                      "loc": {
                                        "start": {
                                          "line": 456,
                                          "column": 61
                                        },
                                        "end": {
                                          "line": 456,
                                          "column": 65
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 19223,
                                      "end": 19231,
                                      "loc": {
                                        "start": {
                                          "line": 456,
                                          "column": 66
                                        },
                                        "end": {
                                          "line": 456,
                                          "column": 74
                                        }
                                      },
                                      "name": "gridStep"
                                    },
                                    "computed": false
                                  }
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 19245,
                            "end": 19308,
                            "loc": {
                              "start": {
                                "line": 457,
                                "column": 12
                              },
                              "end": {
                                "line": 457,
                                "column": 75
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 19249,
                                "end": 19307,
                                "loc": {
                                  "start": {
                                    "line": 457,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 457,
                                    "column": 74
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 19249,
                                  "end": 19250,
                                  "loc": {
                                    "start": {
                                      "line": 457,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 457,
                                      "column": 17
                                    }
                                  },
                                  "name": "y"
                                },
                                "init": {
                                  "type": "BinaryExpression",
                                  "start": 19253,
                                  "end": 19307,
                                  "loc": {
                                    "start": {
                                      "line": 457,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 457,
                                      "column": 74
                                    }
                                  },
                                  "left": {
                                    "type": "CallExpression",
                                    "start": 19253,
                                    "end": 19291,
                                    "loc": {
                                      "start": {
                                        "line": 457,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 457,
                                        "column": 58
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 19253,
                                      "end": 19263,
                                      "loc": {
                                        "start": {
                                          "line": 457,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 457,
                                          "column": 30
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 19253,
                                        "end": 19257,
                                        "loc": {
                                          "start": {
                                            "line": 457,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 457,
                                            "column": 24
                                          }
                                        },
                                        "name": "Math"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 19258,
                                        "end": 19263,
                                        "loc": {
                                          "start": {
                                            "line": 457,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 457,
                                            "column": 30
                                          }
                                        },
                                        "name": "round"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 19264,
                                        "end": 19290,
                                        "loc": {
                                          "start": {
                                            "line": 457,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 457,
                                            "column": 57
                                          }
                                        },
                                        "left": {
                                          "type": "MemberExpression",
                                          "start": 19264,
                                          "end": 19274,
                                          "loc": {
                                            "start": {
                                              "line": 457,
                                              "column": 31
                                            },
                                            "end": {
                                              "line": 457,
                                              "column": 41
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 19264,
                                            "end": 19272,
                                            "loc": {
                                              "start": {
                                                "line": 457,
                                                "column": 31
                                              },
                                              "end": {
                                                "line": 457,
                                                "column": 39
                                              }
                                            },
                                            "name": "newPoint"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 19273,
                                            "end": 19274,
                                            "loc": {
                                              "start": {
                                                "line": 457,
                                                "column": 40
                                              },
                                              "end": {
                                                "line": 457,
                                                "column": 41
                                              }
                                            },
                                            "name": "y"
                                          },
                                          "computed": false
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "MemberExpression",
                                          "start": 19277,
                                          "end": 19290,
                                          "loc": {
                                            "start": {
                                              "line": 457,
                                              "column": 44
                                            },
                                            "end": {
                                              "line": 457,
                                              "column": 57
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 19277,
                                            "end": 19281,
                                            "loc": {
                                              "start": {
                                                "line": 457,
                                                "column": 44
                                              },
                                              "end": {
                                                "line": 457,
                                                "column": 48
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 19282,
                                            "end": 19290,
                                            "loc": {
                                              "start": {
                                                "line": 457,
                                                "column": 49
                                              },
                                              "end": {
                                                "line": 457,
                                                "column": 57
                                              }
                                            },
                                            "name": "gridStep"
                                          },
                                          "computed": false
                                        }
                                      }
                                    ]
                                  },
                                  "operator": "*",
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 19294,
                                    "end": 19307,
                                    "loc": {
                                      "start": {
                                        "line": 457,
                                        "column": 61
                                      },
                                      "end": {
                                        "line": 457,
                                        "column": 74
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 19294,
                                      "end": 19298,
                                      "loc": {
                                        "start": {
                                          "line": 457,
                                          "column": 61
                                        },
                                        "end": {
                                          "line": 457,
                                          "column": 65
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 19299,
                                      "end": 19307,
                                      "loc": {
                                        "start": {
                                          "line": 457,
                                          "column": 66
                                        },
                                        "end": {
                                          "line": 457,
                                          "column": 74
                                        }
                                      },
                                      "name": "gridStep"
                                    },
                                    "computed": false
                                  }
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "IfStatement",
                            "start": 19321,
                            "end": 19539,
                            "loc": {
                              "start": {
                                "line": 458,
                                "column": 12
                              },
                              "end": {
                                "line": 462,
                                "column": 13
                              }
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 19325,
                              "end": 19416,
                              "loc": {
                                "start": {
                                  "line": 458,
                                  "column": 16
                                },
                                "end": {
                                  "line": 458,
                                  "column": 107
                                }
                              },
                              "left": {
                                "type": "BinaryExpression",
                                "start": 19326,
                                "end": 19395,
                                "loc": {
                                  "start": {
                                    "line": 458,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 458,
                                    "column": 86
                                  }
                                },
                                "left": {
                                  "type": "BinaryExpression",
                                  "start": 19326,
                                  "end": 19359,
                                  "loc": {
                                    "start": {
                                      "line": 458,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 458,
                                      "column": 50
                                    }
                                  },
                                  "left": {
                                    "type": "BinaryExpression",
                                    "start": 19327,
                                    "end": 19341,
                                    "loc": {
                                      "start": {
                                        "line": 458,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 458,
                                        "column": 32
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 19327,
                                      "end": 19328,
                                      "loc": {
                                        "start": {
                                          "line": 458,
                                          "column": 18
                                        },
                                        "end": {
                                          "line": 458,
                                          "column": 19
                                        }
                                      },
                                      "name": "x"
                                    },
                                    "operator": "-",
                                    "right": {
                                      "type": "MemberExpression",
                                      "start": 19331,
                                      "end": 19341,
                                      "loc": {
                                        "start": {
                                          "line": 458,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 458,
                                          "column": 32
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 19331,
                                        "end": 19339,
                                        "loc": {
                                          "start": {
                                            "line": 458,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 458,
                                            "column": 30
                                          }
                                        },
                                        "name": "newPoint"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 19340,
                                        "end": 19341,
                                        "loc": {
                                          "start": {
                                            "line": 458,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 458,
                                            "column": 32
                                          }
                                        },
                                        "name": "x"
                                      },
                                      "computed": false
                                    },
                                    "parenthesizedExpression": true
                                  },
                                  "operator": "*",
                                  "right": {
                                    "type": "BinaryExpression",
                                    "start": 19344,
                                    "end": 19358,
                                    "loc": {
                                      "start": {
                                        "line": 458,
                                        "column": 35
                                      },
                                      "end": {
                                        "line": 458,
                                        "column": 49
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 19344,
                                      "end": 19345,
                                      "loc": {
                                        "start": {
                                          "line": 458,
                                          "column": 35
                                        },
                                        "end": {
                                          "line": 458,
                                          "column": 36
                                        }
                                      },
                                      "name": "x"
                                    },
                                    "operator": "-",
                                    "right": {
                                      "type": "MemberExpression",
                                      "start": 19348,
                                      "end": 19358,
                                      "loc": {
                                        "start": {
                                          "line": 458,
                                          "column": 39
                                        },
                                        "end": {
                                          "line": 458,
                                          "column": 49
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 19348,
                                        "end": 19356,
                                        "loc": {
                                          "start": {
                                            "line": 458,
                                            "column": 39
                                          },
                                          "end": {
                                            "line": 458,
                                            "column": 47
                                          }
                                        },
                                        "name": "newPoint"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 19357,
                                        "end": 19358,
                                        "loc": {
                                          "start": {
                                            "line": 458,
                                            "column": 48
                                          },
                                          "end": {
                                            "line": 458,
                                            "column": 49
                                          }
                                        },
                                        "name": "x"
                                      },
                                      "computed": false
                                    },
                                    "parenthesizedExpression": true
                                  }
                                },
                                "operator": "+",
                                "right": {
                                  "type": "BinaryExpression",
                                  "start": 19362,
                                  "end": 19395,
                                  "loc": {
                                    "start": {
                                      "line": 458,
                                      "column": 53
                                    },
                                    "end": {
                                      "line": 458,
                                      "column": 86
                                    }
                                  },
                                  "left": {
                                    "type": "BinaryExpression",
                                    "start": 19363,
                                    "end": 19377,
                                    "loc": {
                                      "start": {
                                        "line": 458,
                                        "column": 54
                                      },
                                      "end": {
                                        "line": 458,
                                        "column": 68
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 19363,
                                      "end": 19364,
                                      "loc": {
                                        "start": {
                                          "line": 458,
                                          "column": 54
                                        },
                                        "end": {
                                          "line": 458,
                                          "column": 55
                                        }
                                      },
                                      "name": "y"
                                    },
                                    "operator": "-",
                                    "right": {
                                      "type": "MemberExpression",
                                      "start": 19367,
                                      "end": 19377,
                                      "loc": {
                                        "start": {
                                          "line": 458,
                                          "column": 58
                                        },
                                        "end": {
                                          "line": 458,
                                          "column": 68
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 19367,
                                        "end": 19375,
                                        "loc": {
                                          "start": {
                                            "line": 458,
                                            "column": 58
                                          },
                                          "end": {
                                            "line": 458,
                                            "column": 66
                                          }
                                        },
                                        "name": "newPoint"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 19376,
                                        "end": 19377,
                                        "loc": {
                                          "start": {
                                            "line": 458,
                                            "column": 67
                                          },
                                          "end": {
                                            "line": 458,
                                            "column": 68
                                          }
                                        },
                                        "name": "y"
                                      },
                                      "computed": false
                                    },
                                    "parenthesizedExpression": true
                                  },
                                  "operator": "*",
                                  "right": {
                                    "type": "BinaryExpression",
                                    "start": 19380,
                                    "end": 19394,
                                    "loc": {
                                      "start": {
                                        "line": 458,
                                        "column": 71
                                      },
                                      "end": {
                                        "line": 458,
                                        "column": 85
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 19380,
                                      "end": 19381,
                                      "loc": {
                                        "start": {
                                          "line": 458,
                                          "column": 71
                                        },
                                        "end": {
                                          "line": 458,
                                          "column": 72
                                        }
                                      },
                                      "name": "y"
                                    },
                                    "operator": "-",
                                    "right": {
                                      "type": "MemberExpression",
                                      "start": 19384,
                                      "end": 19394,
                                      "loc": {
                                        "start": {
                                          "line": 458,
                                          "column": 75
                                        },
                                        "end": {
                                          "line": 458,
                                          "column": 85
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 19384,
                                        "end": 19392,
                                        "loc": {
                                          "start": {
                                            "line": 458,
                                            "column": 75
                                          },
                                          "end": {
                                            "line": 458,
                                            "column": 83
                                          }
                                        },
                                        "name": "newPoint"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 19393,
                                        "end": 19394,
                                        "loc": {
                                          "start": {
                                            "line": 458,
                                            "column": 84
                                          },
                                          "end": {
                                            "line": 458,
                                            "column": 85
                                          }
                                        },
                                        "name": "y"
                                      },
                                      "computed": false
                                    },
                                    "parenthesizedExpression": true
                                  }
                                },
                                "parenthesizedExpression": true
                              },
                              "operator": "<",
                              "right": {
                                "type": "BinaryExpression",
                                "start": 19399,
                                "end": 19416,
                                "loc": {
                                  "start": {
                                    "line": 458,
                                    "column": 90
                                  },
                                  "end": {
                                    "line": 458,
                                    "column": 107
                                  }
                                },
                                "left": {
                                  "type": "Identifier",
                                  "start": 19399,
                                  "end": 19407,
                                  "loc": {
                                    "start": {
                                      "line": 458,
                                      "column": 90
                                    },
                                    "end": {
                                      "line": 458,
                                      "column": 98
                                    }
                                  },
                                  "name": "distance"
                                },
                                "operator": "*",
                                "right": {
                                  "type": "Identifier",
                                  "start": 19408,
                                  "end": 19416,
                                  "loc": {
                                    "start": {
                                      "line": 458,
                                      "column": 99
                                    },
                                    "end": {
                                      "line": 458,
                                      "column": 107
                                    }
                                  },
                                  "name": "distance"
                                }
                              }
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 19418,
                              "end": 19539,
                              "loc": {
                                "start": {
                                  "line": 458,
                                  "column": 109
                                },
                                "end": {
                                  "line": 462,
                                  "column": 13
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 19436,
                                  "end": 19455,
                                  "loc": {
                                    "start": {
                                      "line": 459,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 459,
                                      "column": 35
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 19436,
                                    "end": 19454,
                                    "loc": {
                                      "start": {
                                        "line": 459,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 459,
                                        "column": 34
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 19436,
                                      "end": 19450,
                                      "loc": {
                                        "start": {
                                          "line": 459,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 459,
                                          "column": 30
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 19436,
                                        "end": 19448,
                                        "loc": {
                                          "start": {
                                            "line": 459,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 459,
                                            "column": 28
                                          }
                                        },
                                        "name": "closestPoint"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 19449,
                                        "end": 19450,
                                        "loc": {
                                          "start": {
                                            "line": 459,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 459,
                                            "column": 30
                                          }
                                        },
                                        "name": "x"
                                      },
                                      "computed": false
                                    },
                                    "right": {
                                      "type": "Identifier",
                                      "start": 19453,
                                      "end": 19454,
                                      "loc": {
                                        "start": {
                                          "line": 459,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 459,
                                          "column": 34
                                        }
                                      },
                                      "name": "x"
                                    }
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 19472,
                                  "end": 19491,
                                  "loc": {
                                    "start": {
                                      "line": 460,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 460,
                                      "column": 35
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 19472,
                                    "end": 19490,
                                    "loc": {
                                      "start": {
                                        "line": 460,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 460,
                                        "column": 34
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 19472,
                                      "end": 19486,
                                      "loc": {
                                        "start": {
                                          "line": 460,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 460,
                                          "column": 30
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 19472,
                                        "end": 19484,
                                        "loc": {
                                          "start": {
                                            "line": 460,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 460,
                                            "column": 28
                                          }
                                        },
                                        "name": "closestPoint"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 19485,
                                        "end": 19486,
                                        "loc": {
                                          "start": {
                                            "line": 460,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 460,
                                            "column": 30
                                          }
                                        },
                                        "name": "y"
                                      },
                                      "computed": false
                                    },
                                    "right": {
                                      "type": "Identifier",
                                      "start": 19489,
                                      "end": 19490,
                                      "loc": {
                                        "start": {
                                          "line": 460,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 460,
                                          "column": 34
                                        }
                                      },
                                      "name": "y"
                                    }
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 19508,
                                  "end": 19525,
                                  "loc": {
                                    "start": {
                                      "line": 461,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 461,
                                      "column": 33
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 19508,
                                    "end": 19524,
                                    "loc": {
                                      "start": {
                                        "line": 461,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 461,
                                        "column": 32
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "Identifier",
                                      "start": 19508,
                                      "end": 19517,
                                      "loc": {
                                        "start": {
                                          "line": 461,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 461,
                                          "column": 25
                                        }
                                      },
                                      "name": "isSnapped"
                                    },
                                    "right": {
                                      "type": "Literal",
                                      "start": 19520,
                                      "end": 19524,
                                      "loc": {
                                        "start": {
                                          "line": 461,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 461,
                                          "column": 32
                                        }
                                      },
                                      "value": true,
                                      "rawValue": true,
                                      "raw": "true"
                                    }
                                  }
                                }
                              ]
                            },
                            "alternate": null
                          }
                        ]
                      },
                      "alternate": null
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 19559,
                      "end": 19717,
                      "loc": {
                        "start": {
                          "line": 465,
                          "column": 8
                        },
                        "end": {
                          "line": 469,
                          "column": 10
                        }
                      },
                      "argument": {
                        "type": "ObjectExpression",
                        "start": 19566,
                        "end": 19716,
                        "loc": {
                          "start": {
                            "line": 465,
                            "column": 15
                          },
                          "end": {
                            "line": 469,
                            "column": 9
                          }
                        },
                        "properties": [
                          {
                            "type": "Property",
                            "start": 19580,
                            "end": 19609,
                            "loc": {
                              "start": {
                                "line": 466,
                                "column": 12
                              },
                              "end": {
                                "line": 466,
                                "column": 41
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 19580,
                              "end": 19595,
                              "loc": {
                                "start": {
                                  "line": 466,
                                  "column": 12
                                },
                                "end": {
                                  "line": 466,
                                  "column": 27
                                }
                              },
                              "name": "snappedPosition"
                            },
                            "value": {
                              "type": "Identifier",
                              "start": 19597,
                              "end": 19609,
                              "loc": {
                                "start": {
                                  "line": 466,
                                  "column": 29
                                },
                                "end": {
                                  "line": 466,
                                  "column": 41
                                }
                              },
                              "name": "closestPoint"
                            },
                            "kind": "init"
                          },
                          {
                            "type": "Property",
                            "start": 19623,
                            "end": 19672,
                            "loc": {
                              "start": {
                                "line": 467,
                                "column": 12
                              },
                              "end": {
                                "line": 467,
                                "column": 61
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 19623,
                              "end": 19636,
                              "loc": {
                                "start": {
                                  "line": 467,
                                  "column": 12
                                },
                                "end": {
                                  "line": 467,
                                  "column": 25
                                }
                              },
                              "name": "snappingShift"
                            },
                            "value": {
                              "type": "CallExpression",
                              "start": 19638,
                              "end": 19672,
                              "loc": {
                                "start": {
                                  "line": 467,
                                  "column": 27
                                },
                                "end": {
                                  "line": 467,
                                  "column": 61
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 19638,
                                "end": 19662,
                                "loc": {
                                  "start": {
                                    "line": 467,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 467,
                                    "column": 51
                                  }
                                },
                                "object": {
                                  "type": "CallExpression",
                                  "start": 19638,
                                  "end": 19658,
                                  "loc": {
                                    "start": {
                                      "line": 467,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 467,
                                      "column": 47
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 19638,
                                    "end": 19656,
                                    "loc": {
                                      "start": {
                                        "line": 467,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 467,
                                        "column": 45
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 19638,
                                      "end": 19650,
                                      "loc": {
                                        "start": {
                                          "line": 467,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 467,
                                          "column": 39
                                        }
                                      },
                                      "name": "closestPoint"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 19651,
                                      "end": 19656,
                                      "loc": {
                                        "start": {
                                          "line": 467,
                                          "column": 40
                                        },
                                        "end": {
                                          "line": 467,
                                          "column": 45
                                        }
                                      },
                                      "name": "clone"
                                    },
                                    "computed": false
                                  },
                                  "arguments": []
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 19659,
                                  "end": 19662,
                                  "loc": {
                                    "start": {
                                      "line": 467,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 467,
                                      "column": 51
                                    }
                                  },
                                  "name": "sub"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 19663,
                                  "end": 19671,
                                  "loc": {
                                    "start": {
                                      "line": 467,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 467,
                                      "column": 60
                                    }
                                  },
                                  "name": "newPoint"
                                }
                              ]
                            },
                            "kind": "init"
                          },
                          {
                            "type": "Property",
                            "start": 19686,
                            "end": 19706,
                            "loc": {
                              "start": {
                                "line": 468,
                                "column": 12
                              },
                              "end": {
                                "line": 468,
                                "column": 32
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 19686,
                              "end": 19695,
                              "loc": {
                                "start": {
                                  "line": 468,
                                  "column": 12
                                },
                                "end": {
                                  "line": 468,
                                  "column": 21
                                }
                              },
                              "name": "isSnapped"
                            },
                            "value": {
                              "type": "Identifier",
                              "start": 19697,
                              "end": 19706,
                              "loc": {
                                "start": {
                                  "line": 468,
                                  "column": 23
                                },
                                "end": {
                                  "line": 468,
                                  "column": 32
                                }
                              },
                              "name": "isSnapped"
                            },
                            "kind": "init"
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 19729,
              "end": 20335,
              "loc": {
                "start": {
                  "line": 472,
                  "column": 4
                },
                "end": {
                  "line": 481,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 19729,
                "end": 19748,
                "loc": {
                  "start": {
                    "line": 472,
                    "column": 4
                  },
                  "end": {
                    "line": 472,
                    "column": 23
                  }
                },
                "name": "getClosestSnapPoint"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 19748,
                "end": 20335,
                "loc": {
                  "start": {
                    "line": 472,
                    "column": 23
                  },
                  "end": {
                    "line": 481,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 19749,
                    "end": 19757,
                    "loc": {
                      "start": {
                        "line": 472,
                        "column": 24
                      },
                      "end": {
                        "line": 472,
                        "column": 32
                      }
                    },
                    "name": "position"
                  },
                  {
                    "type": "Identifier",
                    "start": 19759,
                    "end": 19770,
                    "loc": {
                      "start": {
                        "line": 472,
                        "column": 34
                      },
                      "end": {
                        "line": 472,
                        "column": 45
                      }
                    },
                    "name": "maxDistance"
                  },
                  {
                    "type": "Identifier",
                    "start": 19772,
                    "end": 19784,
                    "loc": {
                      "start": {
                        "line": 472,
                        "column": 47
                      },
                      "end": {
                        "line": 472,
                        "column": 59
                      }
                    },
                    "name": "ignoreFilter"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 19786,
                  "end": 20335,
                  "loc": {
                    "start": {
                      "line": 472,
                      "column": 61
                    },
                    "end": {
                      "line": 481,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 19796,
                      "end": 19828,
                      "loc": {
                        "start": {
                          "line": 473,
                          "column": 8
                        },
                        "end": {
                          "line": 473,
                          "column": 40
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 19800,
                          "end": 19827,
                          "loc": {
                            "start": {
                              "line": 473,
                              "column": 12
                            },
                            "end": {
                              "line": 473,
                              "column": 39
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 19800,
                            "end": 19808,
                            "loc": {
                              "start": {
                                "line": 473,
                                "column": 12
                              },
                              "end": {
                                "line": 473,
                                "column": 20
                              }
                            },
                            "name": "toReturn"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 19811,
                            "end": 19827,
                            "loc": {
                              "start": {
                                "line": 473,
                                "column": 23
                              },
                              "end": {
                                "line": 473,
                                "column": 39
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 19811,
                              "end": 19825,
                              "loc": {
                                "start": {
                                  "line": 473,
                                  "column": 23
                                },
                                "end": {
                                  "line": 473,
                                  "column": 37
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 19811,
                                "end": 19819,
                                "loc": {
                                  "start": {
                                    "line": 473,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 473,
                                    "column": 31
                                  }
                                },
                                "name": "position"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 19820,
                                "end": 19825,
                                "loc": {
                                  "start": {
                                    "line": 473,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 473,
                                    "column": 37
                                  }
                                },
                                "name": "clone"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 19837,
                      "end": 19922,
                      "loc": {
                        "start": {
                          "line": 474,
                          "column": 8
                        },
                        "end": {
                          "line": 474,
                          "column": 93
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 19841,
                          "end": 19921,
                          "loc": {
                            "start": {
                              "line": 474,
                              "column": 12
                            },
                            "end": {
                              "line": 474,
                              "column": 92
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 19841,
                            "end": 19857,
                            "loc": {
                              "start": {
                                "line": 474,
                                "column": 12
                              },
                              "end": {
                                "line": 474,
                                "column": 28
                              }
                            },
                            "name": "gridClosestPoint"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 19860,
                            "end": 19921,
                            "loc": {
                              "start": {
                                "line": 474,
                                "column": 31
                              },
                              "end": {
                                "line": 474,
                                "column": 92
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 19860,
                              "end": 19884,
                              "loc": {
                                "start": {
                                  "line": 474,
                                  "column": 31
                                },
                                "end": {
                                  "line": 474,
                                  "column": 55
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 19860,
                                "end": 19864,
                                "loc": {
                                  "start": {
                                    "line": 474,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 474,
                                    "column": 35
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 19865,
                                "end": 19884,
                                "loc": {
                                  "start": {
                                    "line": 474,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 474,
                                    "column": 55
                                  }
                                },
                                "name": "getClosestGridPoint"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 19885,
                                "end": 19893,
                                "loc": {
                                  "start": {
                                    "line": 474,
                                    "column": 56
                                  },
                                  "end": {
                                    "line": 474,
                                    "column": 64
                                  }
                                },
                                "name": "toReturn"
                              },
                              {
                                "type": "Identifier",
                                "start": 19895,
                                "end": 19906,
                                "loc": {
                                  "start": {
                                    "line": 474,
                                    "column": 66
                                  },
                                  "end": {
                                    "line": 474,
                                    "column": 77
                                  }
                                },
                                "name": "maxDistance"
                              },
                              {
                                "type": "Identifier",
                                "start": 19908,
                                "end": 19920,
                                "loc": {
                                  "start": {
                                    "line": 474,
                                    "column": 79
                                  },
                                  "end": {
                                    "line": 474,
                                    "column": 91
                                  }
                                },
                                "name": "ignoreFilter"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 19931,
                      "end": 20016,
                      "loc": {
                        "start": {
                          "line": 475,
                          "column": 8
                        },
                        "end": {
                          "line": 475,
                          "column": 93
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 19935,
                          "end": 20015,
                          "loc": {
                            "start": {
                              "line": 475,
                              "column": 12
                            },
                            "end": {
                              "line": 475,
                              "column": 92
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 19935,
                            "end": 19951,
                            "loc": {
                              "start": {
                                "line": 475,
                                "column": 12
                              },
                              "end": {
                                "line": 475,
                                "column": 28
                              }
                            },
                            "name": "geomClosestPoint"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 19954,
                            "end": 20015,
                            "loc": {
                              "start": {
                                "line": 475,
                                "column": 31
                              },
                              "end": {
                                "line": 475,
                                "column": 92
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 19954,
                              "end": 19978,
                              "loc": {
                                "start": {
                                  "line": 475,
                                  "column": 31
                                },
                                "end": {
                                  "line": 475,
                                  "column": 55
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 19954,
                                "end": 19958,
                                "loc": {
                                  "start": {
                                    "line": 475,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 475,
                                    "column": 35
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 19959,
                                "end": 19978,
                                "loc": {
                                  "start": {
                                    "line": 475,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 475,
                                    "column": 55
                                  }
                                },
                                "name": "getClosestGeomPoint"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 19979,
                                "end": 19987,
                                "loc": {
                                  "start": {
                                    "line": 475,
                                    "column": 56
                                  },
                                  "end": {
                                    "line": 475,
                                    "column": 64
                                  }
                                },
                                "name": "toReturn"
                              },
                              {
                                "type": "Identifier",
                                "start": 19989,
                                "end": 20000,
                                "loc": {
                                  "start": {
                                    "line": 475,
                                    "column": 66
                                  },
                                  "end": {
                                    "line": 475,
                                    "column": 77
                                  }
                                },
                                "name": "maxDistance"
                              },
                              {
                                "type": "Identifier",
                                "start": 20002,
                                "end": 20014,
                                "loc": {
                                  "start": {
                                    "line": 475,
                                    "column": 79
                                  },
                                  "end": {
                                    "line": 475,
                                    "column": 91
                                  }
                                },
                                "name": "ignoreFilter"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 20026,
                      "end": 20329,
                      "loc": {
                        "start": {
                          "line": 477,
                          "column": 8
                        },
                        "end": {
                          "line": 480,
                          "column": 86
                        }
                      },
                      "test": {
                        "type": "LogicalExpression",
                        "start": 20030,
                        "end": 20086,
                        "loc": {
                          "start": {
                            "line": 477,
                            "column": 12
                          },
                          "end": {
                            "line": 477,
                            "column": 68
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 20030,
                          "end": 20056,
                          "loc": {
                            "start": {
                              "line": 477,
                              "column": 12
                            },
                            "end": {
                              "line": 477,
                              "column": 38
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 20030,
                            "end": 20046,
                            "loc": {
                              "start": {
                                "line": 477,
                                "column": 12
                              },
                              "end": {
                                "line": 477,
                                "column": 28
                              }
                            },
                            "name": "geomClosestPoint"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 20047,
                            "end": 20056,
                            "loc": {
                              "start": {
                                "line": 477,
                                "column": 29
                              },
                              "end": {
                                "line": 477,
                                "column": 38
                              }
                            },
                            "name": "isSnapped"
                          },
                          "computed": false
                        },
                        "operator": "&&",
                        "right": {
                          "type": "MemberExpression",
                          "start": 20060,
                          "end": 20086,
                          "loc": {
                            "start": {
                              "line": 477,
                              "column": 42
                            },
                            "end": {
                              "line": 477,
                              "column": 68
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 20060,
                            "end": 20076,
                            "loc": {
                              "start": {
                                "line": 477,
                                "column": 42
                              },
                              "end": {
                                "line": 477,
                                "column": 58
                              }
                            },
                            "name": "gridClosestPoint"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 20077,
                            "end": 20086,
                            "loc": {
                              "start": {
                                "line": 477,
                                "column": 59
                              },
                              "end": {
                                "line": 477,
                                "column": 68
                              }
                            },
                            "name": "isSnapped"
                          },
                          "computed": false
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 20100,
                        "end": 20229,
                        "loc": {
                          "start": {
                            "line": 478,
                            "column": 12
                          },
                          "end": {
                            "line": 478,
                            "column": 141
                          }
                        },
                        "argument": {
                          "type": "ConditionalExpression",
                          "start": 20107,
                          "end": 20228,
                          "loc": {
                            "start": {
                              "line": 478,
                              "column": 19
                            },
                            "end": {
                              "line": 478,
                              "column": 140
                            }
                          },
                          "test": {
                            "type": "BinaryExpression",
                            "start": 20107,
                            "end": 20188,
                            "loc": {
                              "start": {
                                "line": 478,
                                "column": 19
                              },
                              "end": {
                                "line": 478,
                                "column": 100
                              }
                            },
                            "left": {
                              "type": "CallExpression",
                              "start": 20107,
                              "end": 20146,
                              "loc": {
                                "start": {
                                  "line": 478,
                                  "column": 19
                                },
                                "end": {
                                  "line": 478,
                                  "column": 58
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 20107,
                                "end": 20144,
                                "loc": {
                                  "start": {
                                    "line": 478,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 478,
                                    "column": 56
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 20107,
                                  "end": 20137,
                                  "loc": {
                                    "start": {
                                      "line": 478,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 478,
                                      "column": 49
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 20107,
                                    "end": 20123,
                                    "loc": {
                                      "start": {
                                        "line": 478,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 478,
                                        "column": 35
                                      }
                                    },
                                    "name": "geomClosestPoint"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 20124,
                                    "end": 20137,
                                    "loc": {
                                      "start": {
                                        "line": 478,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 478,
                                        "column": 49
                                      }
                                    },
                                    "name": "snappingShift"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 20138,
                                  "end": 20144,
                                  "loc": {
                                    "start": {
                                      "line": 478,
                                      "column": 50
                                    },
                                    "end": {
                                      "line": 478,
                                      "column": 56
                                    }
                                  },
                                  "name": "length"
                                },
                                "computed": false
                              },
                              "arguments": []
                            },
                            "operator": "<",
                            "right": {
                              "type": "CallExpression",
                              "start": 20149,
                              "end": 20188,
                              "loc": {
                                "start": {
                                  "line": 478,
                                  "column": 61
                                },
                                "end": {
                                  "line": 478,
                                  "column": 100
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 20149,
                                "end": 20186,
                                "loc": {
                                  "start": {
                                    "line": 478,
                                    "column": 61
                                  },
                                  "end": {
                                    "line": 478,
                                    "column": 98
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 20149,
                                  "end": 20179,
                                  "loc": {
                                    "start": {
                                      "line": 478,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 478,
                                      "column": 91
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 20149,
                                    "end": 20165,
                                    "loc": {
                                      "start": {
                                        "line": 478,
                                        "column": 61
                                      },
                                      "end": {
                                        "line": 478,
                                        "column": 77
                                      }
                                    },
                                    "name": "gridClosestPoint"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 20166,
                                    "end": 20179,
                                    "loc": {
                                      "start": {
                                        "line": 478,
                                        "column": 78
                                      },
                                      "end": {
                                        "line": 478,
                                        "column": 91
                                      }
                                    },
                                    "name": "snappingShift"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 20180,
                                  "end": 20186,
                                  "loc": {
                                    "start": {
                                      "line": 478,
                                      "column": 92
                                    },
                                    "end": {
                                      "line": 478,
                                      "column": 98
                                    }
                                  },
                                  "name": "length"
                                },
                                "computed": false
                              },
                              "arguments": []
                            }
                          },
                          "consequent": {
                            "type": "Identifier",
                            "start": 20192,
                            "end": 20208,
                            "loc": {
                              "start": {
                                "line": 478,
                                "column": 104
                              },
                              "end": {
                                "line": 478,
                                "column": 120
                              }
                            },
                            "name": "geomClosestPoint"
                          },
                          "alternate": {
                            "type": "Identifier",
                            "start": 20212,
                            "end": 20228,
                            "loc": {
                              "start": {
                                "line": 478,
                                "column": 124
                              },
                              "end": {
                                "line": 478,
                                "column": 140
                              }
                            },
                            "name": "gridClosestPoint"
                          }
                        }
                      },
                      "alternate": {
                        "type": "ReturnStatement",
                        "start": 20255,
                        "end": 20329,
                        "loc": {
                          "start": {
                            "line": 480,
                            "column": 12
                          },
                          "end": {
                            "line": 480,
                            "column": 86
                          }
                        },
                        "argument": {
                          "type": "ConditionalExpression",
                          "start": 20262,
                          "end": 20328,
                          "loc": {
                            "start": {
                              "line": 480,
                              "column": 19
                            },
                            "end": {
                              "line": 480,
                              "column": 85
                            }
                          },
                          "test": {
                            "type": "MemberExpression",
                            "start": 20262,
                            "end": 20288,
                            "loc": {
                              "start": {
                                "line": 480,
                                "column": 19
                              },
                              "end": {
                                "line": 480,
                                "column": 45
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 20262,
                              "end": 20278,
                              "loc": {
                                "start": {
                                  "line": 480,
                                  "column": 19
                                },
                                "end": {
                                  "line": 480,
                                  "column": 35
                                }
                              },
                              "name": "geomClosestPoint"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 20279,
                              "end": 20288,
                              "loc": {
                                "start": {
                                  "line": 480,
                                  "column": 36
                                },
                                "end": {
                                  "line": 480,
                                  "column": 45
                                }
                              },
                              "name": "isSnapped"
                            },
                            "computed": false
                          },
                          "consequent": {
                            "type": "Identifier",
                            "start": 20292,
                            "end": 20308,
                            "loc": {
                              "start": {
                                "line": 480,
                                "column": 49
                              },
                              "end": {
                                "line": 480,
                                "column": 65
                              }
                            },
                            "name": "geomClosestPoint"
                          },
                          "alternate": {
                            "type": "Identifier",
                            "start": 20312,
                            "end": 20328,
                            "loc": {
                              "start": {
                                "line": 480,
                                "column": 69
                              },
                              "end": {
                                "line": 480,
                                "column": 85
                              }
                            },
                            "name": "gridClosestPoint"
                          }
                        }
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 20341,
              "end": 23474,
              "loc": {
                "start": {
                  "line": 483,
                  "column": 4
                },
                "end": {
                  "line": 553,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 20341,
                "end": 20360,
                "loc": {
                  "start": {
                    "line": 483,
                    "column": 4
                  },
                  "end": {
                    "line": 483,
                    "column": 23
                  }
                },
                "name": "getSnappedPointWrap"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 20360,
                "end": 23474,
                "loc": {
                  "start": {
                    "line": 483,
                    "column": 23
                  },
                  "end": {
                    "line": 553,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 20361,
                    "end": 20374,
                    "loc": {
                      "start": {
                        "line": 483,
                        "column": 24
                      },
                      "end": {
                        "line": 483,
                        "column": 37
                      }
                    },
                    "name": "mousePosition"
                  },
                  {
                    "type": "Identifier",
                    "start": 20376,
                    "end": 20379,
                    "loc": {
                      "start": {
                        "line": 483,
                        "column": 39
                      },
                      "end": {
                        "line": 483,
                        "column": 42
                      }
                    },
                    "name": "obj"
                  },
                  {
                    "type": "Identifier",
                    "start": 20381,
                    "end": 20394,
                    "loc": {
                      "start": {
                        "line": 483,
                        "column": 44
                      },
                      "end": {
                        "line": 483,
                        "column": 57
                      }
                    },
                    "name": "lastDragPoint"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 20396,
                  "end": 23474,
                  "loc": {
                    "start": {
                      "line": 483,
                      "column": 59
                    },
                    "end": {
                      "line": 553,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 20406,
                      "end": 20437,
                      "loc": {
                        "start": {
                          "line": 484,
                          "column": 8
                        },
                        "end": {
                          "line": 484,
                          "column": 39
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 20410,
                        "end": 20414,
                        "loc": {
                          "start": {
                            "line": 484,
                            "column": 12
                          },
                          "end": {
                            "line": 484,
                            "column": 16
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "Identifier",
                          "start": 20411,
                          "end": 20414,
                          "loc": {
                            "start": {
                              "line": 484,
                              "column": 13
                            },
                            "end": {
                              "line": 484,
                              "column": 16
                            }
                          },
                          "name": "obj"
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 20416,
                        "end": 20437,
                        "loc": {
                          "start": {
                            "line": 484,
                            "column": 18
                          },
                          "end": {
                            "line": 484,
                            "column": 39
                          }
                        },
                        "argument": {
                          "type": "Identifier",
                          "start": 20423,
                          "end": 20436,
                          "loc": {
                            "start": {
                              "line": 484,
                              "column": 25
                            },
                            "end": {
                              "line": 484,
                              "column": 38
                            }
                          },
                          "name": "mousePosition"
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 20447,
                      "end": 20476,
                      "loc": {
                        "start": {
                          "line": 486,
                          "column": 8
                        },
                        "end": {
                          "line": 486,
                          "column": 37
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 20451,
                          "end": 20475,
                          "loc": {
                            "start": {
                              "line": 486,
                              "column": 12
                            },
                            "end": {
                              "line": 486,
                              "column": 36
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 20451,
                            "end": 20459,
                            "loc": {
                              "start": {
                                "line": 486,
                                "column": 12
                              },
                              "end": {
                                "line": 486,
                                "column": 20
                              }
                            },
                            "name": "sketcher"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 20462,
                            "end": 20475,
                            "loc": {
                              "start": {
                                "line": 486,
                                "column": 23
                              },
                              "end": {
                                "line": 486,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 20462,
                              "end": 20466,
                              "loc": {
                                "start": {
                                  "line": 486,
                                  "column": 23
                                },
                                "end": {
                                  "line": 486,
                                  "column": 27
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 20467,
                              "end": 20475,
                              "loc": {
                                "start": {
                                  "line": 486,
                                  "column": 28
                                },
                                "end": {
                                  "line": 486,
                                  "column": 36
                                }
                              },
                              "name": "sketcher"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 20485,
                      "end": 20536,
                      "loc": {
                        "start": {
                          "line": 487,
                          "column": 8
                        },
                        "end": {
                          "line": 487,
                          "column": 59
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 20489,
                          "end": 20535,
                          "loc": {
                            "start": {
                              "line": 487,
                              "column": 12
                            },
                            "end": {
                              "line": 487,
                              "column": 58
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 20489,
                            "end": 20500,
                            "loc": {
                              "start": {
                                "line": 487,
                                "column": 12
                              },
                              "end": {
                                "line": 487,
                                "column": 23
                              }
                            },
                            "name": "maxDistance"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 20503,
                            "end": 20535,
                            "loc": {
                              "start": {
                                "line": 487,
                                "column": 26
                              },
                              "end": {
                                "line": 487,
                                "column": 58
                              }
                            },
                            "left": {
                              "type": "MemberExpression",
                              "start": 20503,
                              "end": 20529,
                              "loc": {
                                "start": {
                                  "line": 487,
                                  "column": 26
                                },
                                "end": {
                                  "line": 487,
                                  "column": 52
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 20503,
                                "end": 20527,
                                "loc": {
                                  "start": {
                                    "line": 487,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 487,
                                    "column": 50
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 20503,
                                  "end": 20521,
                                  "loc": {
                                    "start": {
                                      "line": 487,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 487,
                                      "column": 44
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 20503,
                                    "end": 20516,
                                    "loc": {
                                      "start": {
                                        "line": 487,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 487,
                                        "column": 39
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 20503,
                                      "end": 20513,
                                      "loc": {
                                        "start": {
                                          "line": 487,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 487,
                                          "column": 36
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 20503,
                                        "end": 20506,
                                        "loc": {
                                          "start": {
                                            "line": 487,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 487,
                                            "column": 29
                                          }
                                        },
                                        "name": "obj"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 20507,
                                        "end": 20513,
                                        "loc": {
                                          "start": {
                                            "line": 487,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 487,
                                            "column": 36
                                          }
                                        },
                                        "name": "points"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Literal",
                                      "start": 20514,
                                      "end": 20515,
                                      "loc": {
                                        "start": {
                                          "line": 487,
                                          "column": 37
                                        },
                                        "end": {
                                          "line": 487,
                                          "column": 38
                                        }
                                      },
                                      "value": 0,
                                      "rawValue": 0,
                                      "raw": "0"
                                    },
                                    "computed": true
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 20517,
                                    "end": 20521,
                                    "loc": {
                                      "start": {
                                        "line": 487,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 487,
                                        "column": 44
                                      }
                                    },
                                    "name": "mesh"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 20522,
                                  "end": 20527,
                                  "loc": {
                                    "start": {
                                      "line": 487,
                                      "column": 45
                                    },
                                    "end": {
                                      "line": 487,
                                      "column": 50
                                    }
                                  },
                                  "name": "scale"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 20528,
                                "end": 20529,
                                "loc": {
                                  "start": {
                                    "line": 487,
                                    "column": 51
                                  },
                                  "end": {
                                    "line": 487,
                                    "column": 52
                                  }
                                },
                                "name": "x"
                              },
                              "computed": false
                            },
                            "operator": "*",
                            "right": {
                              "type": "Literal",
                              "start": 20532,
                              "end": 20535,
                              "loc": {
                                "start": {
                                  "line": 487,
                                  "column": 55
                                },
                                "end": {
                                  "line": 487,
                                  "column": 58
                                }
                              },
                              "value": 1.5,
                              "rawValue": 1.5,
                              "raw": "1.5"
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "FunctionDeclaration",
                      "start": 20546,
                      "end": 21970,
                      "loc": {
                        "start": {
                          "line": 489,
                          "column": 8
                        },
                        "end": {
                          "line": 519,
                          "column": 9
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 20555,
                        "end": 20570,
                        "loc": {
                          "start": {
                            "line": 489,
                            "column": 17
                          },
                          "end": {
                            "line": 489,
                            "column": 32
                          }
                        },
                        "name": "snapToDirection"
                      },
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [],
                      "body": {
                        "type": "BlockStatement",
                        "start": 20573,
                        "end": 21970,
                        "loc": {
                          "start": {
                            "line": 489,
                            "column": 35
                          },
                          "end": {
                            "line": 519,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 20587,
                            "end": 20624,
                            "loc": {
                              "start": {
                                "line": 490,
                                "column": 12
                              },
                              "end": {
                                "line": 490,
                                "column": 49
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 20591,
                                "end": 20623,
                                "loc": {
                                  "start": {
                                    "line": 490,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 490,
                                    "column": 48
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 20591,
                                  "end": 20599,
                                  "loc": {
                                    "start": {
                                      "line": 490,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 490,
                                      "column": 24
                                    }
                                  },
                                  "name": "toReturn"
                                },
                                "init": {
                                  "type": "CallExpression",
                                  "start": 20602,
                                  "end": 20623,
                                  "loc": {
                                    "start": {
                                      "line": 490,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 490,
                                      "column": 48
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 20602,
                                    "end": 20621,
                                    "loc": {
                                      "start": {
                                        "line": 490,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 490,
                                        "column": 46
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 20602,
                                      "end": 20615,
                                      "loc": {
                                        "start": {
                                          "line": 490,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 490,
                                          "column": 40
                                        }
                                      },
                                      "name": "mousePosition"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 20616,
                                      "end": 20621,
                                      "loc": {
                                        "start": {
                                          "line": 490,
                                          "column": 41
                                        },
                                        "end": {
                                          "line": 490,
                                          "column": 46
                                        }
                                      },
                                      "name": "clone"
                                    },
                                    "computed": false
                                  },
                                  "arguments": []
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 20638,
                            "end": 20660,
                            "loc": {
                              "start": {
                                "line": 492,
                                "column": 12
                              },
                              "end": {
                                "line": 492,
                                "column": 34
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 20642,
                                "end": 20659,
                                "loc": {
                                  "start": {
                                    "line": 492,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 492,
                                    "column": 33
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 20642,
                                  "end": 20646,
                                  "loc": {
                                    "start": {
                                      "line": 492,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 492,
                                      "column": 20
                                    }
                                  },
                                  "name": "line"
                                },
                                "init": {
                                  "type": "MemberExpression",
                                  "start": 20649,
                                  "end": 20659,
                                  "loc": {
                                    "start": {
                                      "line": 492,
                                      "column": 23
                                    },
                                    "end": {
                                      "line": 492,
                                      "column": 33
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 20649,
                                    "end": 20652,
                                    "loc": {
                                      "start": {
                                        "line": 492,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 492,
                                        "column": 26
                                      }
                                    },
                                    "name": "obj"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 20653,
                                    "end": 20659,
                                    "loc": {
                                      "start": {
                                        "line": 492,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 492,
                                        "column": 33
                                      }
                                    },
                                    "name": "parent"
                                  },
                                  "computed": false
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 20673,
                            "end": 20714,
                            "loc": {
                              "start": {
                                "line": 493,
                                "column": 12
                              },
                              "end": {
                                "line": 493,
                                "column": 53
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 20677,
                                "end": 20712,
                                "loc": {
                                  "start": {
                                    "line": 493,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 493,
                                    "column": 51
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 20677,
                                  "end": 20680,
                                  "loc": {
                                    "start": {
                                      "line": 493,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 493,
                                      "column": 19
                                    }
                                  },
                                  "name": "idx"
                                },
                                "init": {
                                  "type": "ConditionalExpression",
                                  "start": 20683,
                                  "end": 20712,
                                  "loc": {
                                    "start": {
                                      "line": 493,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 493,
                                      "column": 51
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 20683,
                                    "end": 20704,
                                    "loc": {
                                      "start": {
                                        "line": 493,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 493,
                                        "column": 43
                                      }
                                    },
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 20683,
                                      "end": 20697,
                                      "loc": {
                                        "start": {
                                          "line": 493,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 493,
                                          "column": 36
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 20683,
                                        "end": 20694,
                                        "loc": {
                                          "start": {
                                            "line": 493,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 493,
                                            "column": 33
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 20683,
                                          "end": 20687,
                                          "loc": {
                                            "start": {
                                              "line": 493,
                                              "column": 22
                                            },
                                            "end": {
                                              "line": 493,
                                              "column": 26
                                            }
                                          },
                                          "name": "line"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 20688,
                                          "end": 20694,
                                          "loc": {
                                            "start": {
                                              "line": 493,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 493,
                                              "column": 33
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 20695,
                                        "end": 20696,
                                        "loc": {
                                          "start": {
                                            "line": 493,
                                            "column": 34
                                          },
                                          "end": {
                                            "line": 493,
                                            "column": 35
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      "computed": true
                                    },
                                    "operator": "==",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 20701,
                                      "end": 20704,
                                      "loc": {
                                        "start": {
                                          "line": 493,
                                          "column": 40
                                        },
                                        "end": {
                                          "line": 493,
                                          "column": 43
                                        }
                                      },
                                      "name": "obj"
                                    }
                                  },
                                  "consequent": {
                                    "type": "Literal",
                                    "start": 20707,
                                    "end": 20708,
                                    "loc": {
                                      "start": {
                                        "line": 493,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 493,
                                        "column": 47
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "alternate": {
                                    "type": "Literal",
                                    "start": 20711,
                                    "end": 20712,
                                    "loc": {
                                      "start": {
                                        "line": 493,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 493,
                                        "column": 51
                                      }
                                    },
                                    "value": 1,
                                    "rawValue": 1,
                                    "raw": "1"
                                  }
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 20727,
                            "end": 20778,
                            "loc": {
                              "start": {
                                "line": 494,
                                "column": 12
                              },
                              "end": {
                                "line": 494,
                                "column": 63
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 20731,
                                "end": 20777,
                                "loc": {
                                  "start": {
                                    "line": 494,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 494,
                                    "column": 62
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 20731,
                                  "end": 20745,
                                  "loc": {
                                    "start": {
                                      "line": 494,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 494,
                                      "column": 30
                                    }
                                  },
                                  "name": "neighbourPoint"
                                },
                                "init": {
                                  "type": "MemberExpression",
                                  "start": 20748,
                                  "end": 20777,
                                  "loc": {
                                    "start": {
                                      "line": 494,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 494,
                                      "column": 62
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 20748,
                                    "end": 20768,
                                    "loc": {
                                      "start": {
                                        "line": 494,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 494,
                                        "column": 53
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 20748,
                                      "end": 20759,
                                      "loc": {
                                        "start": {
                                          "line": 494,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 494,
                                          "column": 44
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 20748,
                                        "end": 20752,
                                        "loc": {
                                          "start": {
                                            "line": 494,
                                            "column": 33
                                          },
                                          "end": {
                                            "line": 494,
                                            "column": 37
                                          }
                                        },
                                        "name": "line"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 20753,
                                        "end": 20759,
                                        "loc": {
                                          "start": {
                                            "line": 494,
                                            "column": 38
                                          },
                                          "end": {
                                            "line": 494,
                                            "column": 44
                                          }
                                        },
                                        "name": "points"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "BinaryExpression",
                                      "start": 20760,
                                      "end": 20767,
                                      "loc": {
                                        "start": {
                                          "line": 494,
                                          "column": 45
                                        },
                                        "end": {
                                          "line": 494,
                                          "column": 52
                                        }
                                      },
                                      "left": {
                                        "type": "Literal",
                                        "start": 20760,
                                        "end": 20761,
                                        "loc": {
                                          "start": {
                                            "line": 494,
                                            "column": 45
                                          },
                                          "end": {
                                            "line": 494,
                                            "column": 46
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      },
                                      "operator": "-",
                                      "right": {
                                        "type": "Identifier",
                                        "start": 20764,
                                        "end": 20767,
                                        "loc": {
                                          "start": {
                                            "line": 494,
                                            "column": 49
                                          },
                                          "end": {
                                            "line": 494,
                                            "column": 52
                                          }
                                        },
                                        "name": "idx"
                                      }
                                    },
                                    "computed": true
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 20769,
                                    "end": 20777,
                                    "loc": {
                                      "start": {
                                        "line": 494,
                                        "column": 54
                                      },
                                      "end": {
                                        "line": 494,
                                        "column": 62
                                      }
                                    },
                                    "name": "position"
                                  },
                                  "computed": false
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 20792,
                            "end": 20824,
                            "loc": {
                              "start": {
                                "line": 496,
                                "column": 12
                              },
                              "end": {
                                "line": 496,
                                "column": 44
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 20796,
                                "end": 20823,
                                "loc": {
                                  "start": {
                                    "line": 496,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 496,
                                    "column": 43
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 20796,
                                  "end": 20801,
                                  "loc": {
                                    "start": {
                                      "line": 496,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 496,
                                      "column": 21
                                    }
                                  },
                                  "name": "delta"
                                },
                                "init": {
                                  "type": "NewExpression",
                                  "start": 20804,
                                  "end": 20823,
                                  "loc": {
                                    "start": {
                                      "line": 496,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 496,
                                      "column": 43
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 20808,
                                    "end": 20821,
                                    "loc": {
                                      "start": {
                                        "line": 496,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 496,
                                        "column": 41
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 20808,
                                      "end": 20813,
                                      "loc": {
                                        "start": {
                                          "line": 496,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 496,
                                          "column": 33
                                        }
                                      },
                                      "name": "THREE"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 20814,
                                      "end": 20821,
                                      "loc": {
                                        "start": {
                                          "line": 496,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 496,
                                          "column": 41
                                        }
                                      },
                                      "name": "Vector3"
                                    },
                                    "computed": false
                                  },
                                  "arguments": []
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 20837,
                            "end": 20880,
                            "loc": {
                              "start": {
                                "line": 497,
                                "column": 12
                              },
                              "end": {
                                "line": 497,
                                "column": 55
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 20837,
                              "end": 20879,
                              "loc": {
                                "start": {
                                  "line": 497,
                                  "column": 12
                                },
                                "end": {
                                  "line": 497,
                                  "column": 54
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 20837,
                                "end": 20853,
                                "loc": {
                                  "start": {
                                    "line": 497,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 497,
                                    "column": 28
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 20837,
                                  "end": 20842,
                                  "loc": {
                                    "start": {
                                      "line": 497,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 497,
                                      "column": 17
                                    }
                                  },
                                  "name": "delta"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 20843,
                                  "end": 20853,
                                  "loc": {
                                    "start": {
                                      "line": 497,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 497,
                                      "column": 28
                                    }
                                  },
                                  "name": "subVectors"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 20854,
                                  "end": 20862,
                                  "loc": {
                                    "start": {
                                      "line": 497,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 497,
                                      "column": 37
                                    }
                                  },
                                  "name": "toReturn"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 20864,
                                  "end": 20878,
                                  "loc": {
                                    "start": {
                                      "line": 497,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 497,
                                      "column": 53
                                    }
                                  },
                                  "name": "neighbourPoint"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 20893,
                            "end": 20907,
                            "loc": {
                              "start": {
                                "line": 498,
                                "column": 12
                              },
                              "end": {
                                "line": 498,
                                "column": 26
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 20893,
                              "end": 20906,
                              "loc": {
                                "start": {
                                  "line": 498,
                                  "column": 12
                                },
                                "end": {
                                  "line": 498,
                                  "column": 25
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 20893,
                                "end": 20900,
                                "loc": {
                                  "start": {
                                    "line": 498,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 498,
                                    "column": 19
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 20893,
                                  "end": 20898,
                                  "loc": {
                                    "start": {
                                      "line": 498,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 498,
                                      "column": 17
                                    }
                                  },
                                  "name": "delta"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 20899,
                                  "end": 20900,
                                  "loc": {
                                    "start": {
                                      "line": 498,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 498,
                                      "column": 19
                                    }
                                  },
                                  "name": "z"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "Literal",
                                "start": 20903,
                                "end": 20906,
                                "loc": {
                                  "start": {
                                    "line": 498,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 498,
                                    "column": 25
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0.0"
                              }
                            }
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 20921,
                            "end": 20946,
                            "loc": {
                              "start": {
                                "line": 500,
                                "column": 12
                              },
                              "end": {
                                "line": 500,
                                "column": 37
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 20925,
                                "end": 20945,
                                "loc": {
                                  "start": {
                                    "line": 500,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 500,
                                    "column": 36
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 20925,
                                  "end": 20928,
                                  "loc": {
                                    "start": {
                                      "line": 500,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 500,
                                      "column": 19
                                    }
                                  },
                                  "name": "len"
                                },
                                "init": {
                                  "type": "CallExpression",
                                  "start": 20931,
                                  "end": 20945,
                                  "loc": {
                                    "start": {
                                      "line": 500,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 500,
                                      "column": 36
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 20931,
                                    "end": 20943,
                                    "loc": {
                                      "start": {
                                        "line": 500,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 500,
                                        "column": 34
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 20931,
                                      "end": 20936,
                                      "loc": {
                                        "start": {
                                          "line": 500,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 500,
                                          "column": 27
                                        }
                                      },
                                      "name": "delta"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 20937,
                                      "end": 20943,
                                      "loc": {
                                        "start": {
                                          "line": 500,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 500,
                                          "column": 34
                                        }
                                      },
                                      "name": "length"
                                    },
                                    "computed": false
                                  },
                                  "arguments": []
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "IfStatement",
                            "start": 20959,
                            "end": 21930,
                            "loc": {
                              "start": {
                                "line": 501,
                                "column": 12
                              },
                              "end": {
                                "line": 516,
                                "column": 13
                              }
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 20963,
                              "end": 20974,
                              "loc": {
                                "start": {
                                  "line": 501,
                                  "column": 16
                                },
                                "end": {
                                  "line": 501,
                                  "column": 27
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 20963,
                                "end": 20966,
                                "loc": {
                                  "start": {
                                    "line": 501,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 501,
                                    "column": 19
                                  }
                                },
                                "name": "len"
                              },
                              "operator": ">",
                              "right": {
                                "type": "Literal",
                                "start": 20969,
                                "end": 20974,
                                "loc": {
                                  "start": {
                                    "line": 501,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 501,
                                    "column": 27
                                  }
                                },
                                "value": 0.001,
                                "rawValue": 0.001,
                                "raw": "0.001"
                              }
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 20976,
                              "end": 21930,
                              "loc": {
                                "start": {
                                  "line": 501,
                                  "column": 29
                                },
                                "end": {
                                  "line": 516,
                                  "column": 13
                                }
                              },
                              "body": [
                                {
                                  "type": "VariableDeclaration",
                                  "start": 20994,
                                  "end": 21036,
                                  "loc": {
                                    "start": {
                                      "line": 502,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 502,
                                      "column": 58
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 20998,
                                      "end": 21035,
                                      "loc": {
                                        "start": {
                                          "line": 502,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 502,
                                          "column": 57
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 20998,
                                        "end": 21000,
                                        "loc": {
                                          "start": {
                                            "line": 502,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 502,
                                            "column": 22
                                          }
                                        },
                                        "name": "oX"
                                      },
                                      "init": {
                                        "type": "NewExpression",
                                        "start": 21003,
                                        "end": 21035,
                                        "loc": {
                                          "start": {
                                            "line": 502,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 502,
                                            "column": 57
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 21007,
                                          "end": 21020,
                                          "loc": {
                                            "start": {
                                              "line": 502,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 502,
                                              "column": 42
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 21007,
                                            "end": 21012,
                                            "loc": {
                                              "start": {
                                                "line": 502,
                                                "column": 29
                                              },
                                              "end": {
                                                "line": 502,
                                                "column": 34
                                              }
                                            },
                                            "name": "THREE"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 21013,
                                            "end": 21020,
                                            "loc": {
                                              "start": {
                                                "line": 502,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 502,
                                                "column": 42
                                              }
                                            },
                                            "name": "Vector3"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Literal",
                                            "start": 21021,
                                            "end": 21024,
                                            "loc": {
                                              "start": {
                                                "line": 502,
                                                "column": 43
                                              },
                                              "end": {
                                                "line": 502,
                                                "column": 46
                                              }
                                            },
                                            "value": 1,
                                            "rawValue": 1,
                                            "raw": "1.0"
                                          },
                                          {
                                            "type": "Literal",
                                            "start": 21026,
                                            "end": 21029,
                                            "loc": {
                                              "start": {
                                                "line": 502,
                                                "column": 48
                                              },
                                              "end": {
                                                "line": 502,
                                                "column": 51
                                              }
                                            },
                                            "value": 0,
                                            "rawValue": 0,
                                            "raw": "0.0"
                                          },
                                          {
                                            "type": "Literal",
                                            "start": 21031,
                                            "end": 21034,
                                            "loc": {
                                              "start": {
                                                "line": 502,
                                                "column": 53
                                              },
                                              "end": {
                                                "line": 502,
                                                "column": 56
                                              }
                                            },
                                            "value": 0,
                                            "rawValue": 0,
                                            "raw": "0.0"
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 21053,
                                  "end": 21092,
                                  "loc": {
                                    "start": {
                                      "line": 503,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 503,
                                      "column": 55
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 21057,
                                      "end": 21091,
                                      "loc": {
                                        "start": {
                                          "line": 503,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 503,
                                          "column": 54
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 21057,
                                        "end": 21071,
                                        "loc": {
                                          "start": {
                                            "line": 503,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 503,
                                            "column": 34
                                          }
                                        },
                                        "name": "angleDeltaToOX"
                                      },
                                      "init": {
                                        "type": "CallExpression",
                                        "start": 21074,
                                        "end": 21091,
                                        "loc": {
                                          "start": {
                                            "line": 503,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 503,
                                            "column": 54
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 21074,
                                          "end": 21087,
                                          "loc": {
                                            "start": {
                                              "line": 503,
                                              "column": 37
                                            },
                                            "end": {
                                              "line": 503,
                                              "column": 50
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 21074,
                                            "end": 21079,
                                            "loc": {
                                              "start": {
                                                "line": 503,
                                                "column": 37
                                              },
                                              "end": {
                                                "line": 503,
                                                "column": 42
                                              }
                                            },
                                            "name": "delta"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 21080,
                                            "end": 21087,
                                            "loc": {
                                              "start": {
                                                "line": 503,
                                                "column": 43
                                              },
                                              "end": {
                                                "line": 503,
                                                "column": 50
                                              }
                                            },
                                            "name": "angleTo"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 21088,
                                            "end": 21090,
                                            "loc": {
                                              "start": {
                                                "line": 503,
                                                "column": 51
                                              },
                                              "end": {
                                                "line": 503,
                                                "column": 53
                                              }
                                            },
                                            "name": "oX"
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 21109,
                                  "end": 21196,
                                  "loc": {
                                    "start": {
                                      "line": 504,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 504,
                                      "column": 103
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 21109,
                                    "end": 21195,
                                    "loc": {
                                      "start": {
                                        "line": 504,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 504,
                                        "column": 102
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "Identifier",
                                      "start": 21109,
                                      "end": 21123,
                                      "loc": {
                                        "start": {
                                          "line": 504,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 504,
                                          "column": 30
                                        }
                                      },
                                      "name": "angleDeltaToOX"
                                    },
                                    "right": {
                                      "type": "ConditionalExpression",
                                      "start": 21126,
                                      "end": 21195,
                                      "loc": {
                                        "start": {
                                          "line": 504,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 504,
                                          "column": 102
                                        }
                                      },
                                      "test": {
                                        "type": "BinaryExpression",
                                        "start": 21127,
                                        "end": 21142,
                                        "loc": {
                                          "start": {
                                            "line": 504,
                                            "column": 34
                                          },
                                          "end": {
                                            "line": 504,
                                            "column": 49
                                          }
                                        },
                                        "left": {
                                          "type": "MemberExpression",
                                          "start": 21127,
                                          "end": 21134,
                                          "loc": {
                                            "start": {
                                              "line": 504,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 504,
                                              "column": 41
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 21127,
                                            "end": 21132,
                                            "loc": {
                                              "start": {
                                                "line": 504,
                                                "column": 34
                                              },
                                              "end": {
                                                "line": 504,
                                                "column": 39
                                              }
                                            },
                                            "name": "delta"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 21133,
                                            "end": 21134,
                                            "loc": {
                                              "start": {
                                                "line": 504,
                                                "column": 40
                                              },
                                              "end": {
                                                "line": 504,
                                                "column": 41
                                              }
                                            },
                                            "name": "y"
                                          },
                                          "computed": false
                                        },
                                        "operator": "<",
                                        "right": {
                                          "type": "UnaryExpression",
                                          "start": 21137,
                                          "end": 21142,
                                          "loc": {
                                            "start": {
                                              "line": 504,
                                              "column": 44
                                            },
                                            "end": {
                                              "line": 504,
                                              "column": 49
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Literal",
                                            "start": 21138,
                                            "end": 21142,
                                            "loc": {
                                              "start": {
                                                "line": 504,
                                                "column": 45
                                              },
                                              "end": {
                                                "line": 504,
                                                "column": 49
                                              }
                                            },
                                            "value": 0.000001,
                                            "rawValue": 0.000001,
                                            "raw": "1e-6"
                                          }
                                        },
                                        "parenthesizedExpression": true
                                      },
                                      "consequent": {
                                        "type": "BinaryExpression",
                                        "start": 21147,
                                        "end": 21177,
                                        "loc": {
                                          "start": {
                                            "line": 504,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 504,
                                            "column": 84
                                          }
                                        },
                                        "left": {
                                          "type": "BinaryExpression",
                                          "start": 21148,
                                          "end": 21159,
                                          "loc": {
                                            "start": {
                                              "line": 504,
                                              "column": 55
                                            },
                                            "end": {
                                              "line": 504,
                                              "column": 66
                                            }
                                          },
                                          "left": {
                                            "type": "Literal",
                                            "start": 21148,
                                            "end": 21149,
                                            "loc": {
                                              "start": {
                                                "line": 504,
                                                "column": 55
                                              },
                                              "end": {
                                                "line": 504,
                                                "column": 56
                                              }
                                            },
                                            "value": 2,
                                            "rawValue": 2,
                                            "raw": "2"
                                          },
                                          "operator": "*",
                                          "right": {
                                            "type": "MemberExpression",
                                            "start": 21152,
                                            "end": 21159,
                                            "loc": {
                                              "start": {
                                                "line": 504,
                                                "column": 59
                                              },
                                              "end": {
                                                "line": 504,
                                                "column": 66
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 21152,
                                              "end": 21156,
                                              "loc": {
                                                "start": {
                                                  "line": 504,
                                                  "column": 59
                                                },
                                                "end": {
                                                  "line": 504,
                                                  "column": 63
                                                }
                                              },
                                              "name": "Math"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 21157,
                                              "end": 21159,
                                              "loc": {
                                                "start": {
                                                  "line": 504,
                                                  "column": 64
                                                },
                                                "end": {
                                                  "line": 504,
                                                  "column": 66
                                                }
                                              },
                                              "name": "PI"
                                            },
                                            "computed": false
                                          },
                                          "parenthesizedExpression": true
                                        },
                                        "operator": "-",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 21163,
                                          "end": 21177,
                                          "loc": {
                                            "start": {
                                              "line": 504,
                                              "column": 70
                                            },
                                            "end": {
                                              "line": 504,
                                              "column": 84
                                            }
                                          },
                                          "name": "angleDeltaToOX"
                                        },
                                        "parenthesizedExpression": true
                                      },
                                      "alternate": {
                                        "type": "Identifier",
                                        "start": 21181,
                                        "end": 21195,
                                        "loc": {
                                          "start": {
                                            "line": 504,
                                            "column": 88
                                          },
                                          "end": {
                                            "line": 504,
                                            "column": 102
                                          }
                                        },
                                        "name": "angleDeltaToOX"
                                      }
                                    }
                                  }
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 21213,
                                  "end": 21227,
                                  "loc": {
                                    "start": {
                                      "line": 505,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 505,
                                      "column": 30
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 21217,
                                      "end": 21226,
                                      "loc": {
                                        "start": {
                                          "line": 505,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 505,
                                          "column": 29
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 21217,
                                        "end": 21221,
                                        "loc": {
                                          "start": {
                                            "line": 505,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 505,
                                            "column": 24
                                          }
                                        },
                                        "name": "axis"
                                      },
                                      "init": {
                                        "type": "Identifier",
                                        "start": 21224,
                                        "end": 21226,
                                        "loc": {
                                          "start": {
                                            "line": 505,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 505,
                                            "column": 29
                                          }
                                        },
                                        "name": "oX"
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 21244,
                                  "end": 21281,
                                  "loc": {
                                    "start": {
                                      "line": 506,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 506,
                                      "column": 53
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 21248,
                                      "end": 21280,
                                      "loc": {
                                        "start": {
                                          "line": 506,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 506,
                                          "column": 52
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 21248,
                                        "end": 21261,
                                        "loc": {
                                          "start": {
                                            "line": 506,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 506,
                                            "column": 33
                                          }
                                        },
                                        "name": "angleAxisToOX"
                                      },
                                      "init": {
                                        "type": "CallExpression",
                                        "start": 21264,
                                        "end": 21280,
                                        "loc": {
                                          "start": {
                                            "line": 506,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 506,
                                            "column": 52
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 21264,
                                          "end": 21276,
                                          "loc": {
                                            "start": {
                                              "line": 506,
                                              "column": 36
                                            },
                                            "end": {
                                              "line": 506,
                                              "column": 48
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 21264,
                                            "end": 21268,
                                            "loc": {
                                              "start": {
                                                "line": 506,
                                                "column": 36
                                              },
                                              "end": {
                                                "line": 506,
                                                "column": 40
                                              }
                                            },
                                            "name": "axis"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 21269,
                                            "end": 21276,
                                            "loc": {
                                              "start": {
                                                "line": 506,
                                                "column": 41
                                              },
                                              "end": {
                                                "line": 506,
                                                "column": 48
                                              }
                                            },
                                            "name": "angleTo"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 21277,
                                            "end": 21279,
                                            "loc": {
                                              "start": {
                                                "line": 506,
                                                "column": 49
                                              },
                                              "end": {
                                                "line": 506,
                                                "column": 51
                                              }
                                            },
                                            "name": "oX"
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 21298,
                                  "end": 21381,
                                  "loc": {
                                    "start": {
                                      "line": 507,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 507,
                                      "column": 99
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 21298,
                                    "end": 21380,
                                    "loc": {
                                      "start": {
                                        "line": 507,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 507,
                                        "column": 98
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "Identifier",
                                      "start": 21298,
                                      "end": 21311,
                                      "loc": {
                                        "start": {
                                          "line": 507,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 507,
                                          "column": 29
                                        }
                                      },
                                      "name": "angleAxisToOX"
                                    },
                                    "right": {
                                      "type": "ConditionalExpression",
                                      "start": 21314,
                                      "end": 21380,
                                      "loc": {
                                        "start": {
                                          "line": 507,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 507,
                                          "column": 98
                                        }
                                      },
                                      "test": {
                                        "type": "BinaryExpression",
                                        "start": 21315,
                                        "end": 21329,
                                        "loc": {
                                          "start": {
                                            "line": 507,
                                            "column": 33
                                          },
                                          "end": {
                                            "line": 507,
                                            "column": 47
                                          }
                                        },
                                        "left": {
                                          "type": "MemberExpression",
                                          "start": 21315,
                                          "end": 21321,
                                          "loc": {
                                            "start": {
                                              "line": 507,
                                              "column": 33
                                            },
                                            "end": {
                                              "line": 507,
                                              "column": 39
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 21315,
                                            "end": 21319,
                                            "loc": {
                                              "start": {
                                                "line": 507,
                                                "column": 33
                                              },
                                              "end": {
                                                "line": 507,
                                                "column": 37
                                              }
                                            },
                                            "name": "axis"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 21320,
                                            "end": 21321,
                                            "loc": {
                                              "start": {
                                                "line": 507,
                                                "column": 38
                                              },
                                              "end": {
                                                "line": 507,
                                                "column": 39
                                              }
                                            },
                                            "name": "y"
                                          },
                                          "computed": false
                                        },
                                        "operator": "<",
                                        "right": {
                                          "type": "UnaryExpression",
                                          "start": 21324,
                                          "end": 21329,
                                          "loc": {
                                            "start": {
                                              "line": 507,
                                              "column": 42
                                            },
                                            "end": {
                                              "line": 507,
                                              "column": 47
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Literal",
                                            "start": 21325,
                                            "end": 21329,
                                            "loc": {
                                              "start": {
                                                "line": 507,
                                                "column": 43
                                              },
                                              "end": {
                                                "line": 507,
                                                "column": 47
                                              }
                                            },
                                            "value": 0.000001,
                                            "rawValue": 0.000001,
                                            "raw": "1e-6"
                                          }
                                        },
                                        "parenthesizedExpression": true
                                      },
                                      "consequent": {
                                        "type": "BinaryExpression",
                                        "start": 21334,
                                        "end": 21363,
                                        "loc": {
                                          "start": {
                                            "line": 507,
                                            "column": 52
                                          },
                                          "end": {
                                            "line": 507,
                                            "column": 81
                                          }
                                        },
                                        "left": {
                                          "type": "BinaryExpression",
                                          "start": 21335,
                                          "end": 21346,
                                          "loc": {
                                            "start": {
                                              "line": 507,
                                              "column": 53
                                            },
                                            "end": {
                                              "line": 507,
                                              "column": 64
                                            }
                                          },
                                          "left": {
                                            "type": "Literal",
                                            "start": 21335,
                                            "end": 21336,
                                            "loc": {
                                              "start": {
                                                "line": 507,
                                                "column": 53
                                              },
                                              "end": {
                                                "line": 507,
                                                "column": 54
                                              }
                                            },
                                            "value": 2,
                                            "rawValue": 2,
                                            "raw": "2"
                                          },
                                          "operator": "*",
                                          "right": {
                                            "type": "MemberExpression",
                                            "start": 21339,
                                            "end": 21346,
                                            "loc": {
                                              "start": {
                                                "line": 507,
                                                "column": 57
                                              },
                                              "end": {
                                                "line": 507,
                                                "column": 64
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 21339,
                                              "end": 21343,
                                              "loc": {
                                                "start": {
                                                  "line": 507,
                                                  "column": 57
                                                },
                                                "end": {
                                                  "line": 507,
                                                  "column": 61
                                                }
                                              },
                                              "name": "Math"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 21344,
                                              "end": 21346,
                                              "loc": {
                                                "start": {
                                                  "line": 507,
                                                  "column": 62
                                                },
                                                "end": {
                                                  "line": 507,
                                                  "column": 64
                                                }
                                              },
                                              "name": "PI"
                                            },
                                            "computed": false
                                          },
                                          "parenthesizedExpression": true
                                        },
                                        "operator": "-",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 21350,
                                          "end": 21363,
                                          "loc": {
                                            "start": {
                                              "line": 507,
                                              "column": 68
                                            },
                                            "end": {
                                              "line": 507,
                                              "column": 81
                                            }
                                          },
                                          "name": "angleAxisToOX"
                                        },
                                        "parenthesizedExpression": true
                                      },
                                      "alternate": {
                                        "type": "Identifier",
                                        "start": 21367,
                                        "end": 21380,
                                        "loc": {
                                          "start": {
                                            "line": 507,
                                            "column": 85
                                          },
                                          "end": {
                                            "line": 507,
                                            "column": 98
                                          }
                                        },
                                        "name": "angleAxisToOX"
                                      }
                                    }
                                  }
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 21399,
                                  "end": 21529,
                                  "loc": {
                                    "start": {
                                      "line": 509,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 509,
                                      "column": 146
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 21403,
                                      "end": 21528,
                                      "loc": {
                                        "start": {
                                          "line": 509,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 509,
                                          "column": 145
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 21403,
                                        "end": 21407,
                                        "loc": {
                                          "start": {
                                            "line": 509,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 509,
                                            "column": 24
                                          }
                                        },
                                        "name": "diff"
                                      },
                                      "init": {
                                        "type": "ConditionalExpression",
                                        "start": 21410,
                                        "end": 21528,
                                        "loc": {
                                          "start": {
                                            "line": 509,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 509,
                                            "column": 145
                                          }
                                        },
                                        "test": {
                                          "type": "BinaryExpression",
                                          "start": 21411,
                                          "end": 21441,
                                          "loc": {
                                            "start": {
                                              "line": 509,
                                              "column": 28
                                            },
                                            "end": {
                                              "line": 509,
                                              "column": 58
                                            }
                                          },
                                          "left": {
                                            "type": "Identifier",
                                            "start": 21411,
                                            "end": 21425,
                                            "loc": {
                                              "start": {
                                                "line": 509,
                                                "column": 28
                                              },
                                              "end": {
                                                "line": 509,
                                                "column": 42
                                              }
                                            },
                                            "name": "angleDeltaToOX"
                                          },
                                          "operator": ">",
                                          "right": {
                                            "type": "Identifier",
                                            "start": 21428,
                                            "end": 21441,
                                            "loc": {
                                              "start": {
                                                "line": 509,
                                                "column": 45
                                              },
                                              "end": {
                                                "line": 509,
                                                "column": 58
                                              }
                                            },
                                            "name": "angleAxisToOX"
                                          },
                                          "parenthesizedExpression": true
                                        },
                                        "consequent": {
                                          "type": "BinaryExpression",
                                          "start": 21446,
                                          "end": 21476,
                                          "loc": {
                                            "start": {
                                              "line": 509,
                                              "column": 63
                                            },
                                            "end": {
                                              "line": 509,
                                              "column": 93
                                            }
                                          },
                                          "left": {
                                            "type": "Identifier",
                                            "start": 21446,
                                            "end": 21460,
                                            "loc": {
                                              "start": {
                                                "line": 509,
                                                "column": 63
                                              },
                                              "end": {
                                                "line": 509,
                                                "column": 77
                                              }
                                            },
                                            "name": "angleDeltaToOX"
                                          },
                                          "operator": "-",
                                          "right": {
                                            "type": "Identifier",
                                            "start": 21463,
                                            "end": 21476,
                                            "loc": {
                                              "start": {
                                                "line": 509,
                                                "column": 80
                                              },
                                              "end": {
                                                "line": 509,
                                                "column": 93
                                              }
                                            },
                                            "name": "angleAxisToOX"
                                          },
                                          "parenthesizedExpression": true
                                        },
                                        "alternate": {
                                          "type": "BinaryExpression",
                                          "start": 21481,
                                          "end": 21527,
                                          "loc": {
                                            "start": {
                                              "line": 509,
                                              "column": 98
                                            },
                                            "end": {
                                              "line": 509,
                                              "column": 144
                                            }
                                          },
                                          "left": {
                                            "type": "BinaryExpression",
                                            "start": 21481,
                                            "end": 21511,
                                            "loc": {
                                              "start": {
                                                "line": 509,
                                                "column": 98
                                              },
                                              "end": {
                                                "line": 509,
                                                "column": 128
                                              }
                                            },
                                            "left": {
                                              "type": "BinaryExpression",
                                              "start": 21482,
                                              "end": 21493,
                                              "loc": {
                                                "start": {
                                                  "line": 509,
                                                  "column": 99
                                                },
                                                "end": {
                                                  "line": 509,
                                                  "column": 110
                                                }
                                              },
                                              "left": {
                                                "type": "Literal",
                                                "start": 21482,
                                                "end": 21483,
                                                "loc": {
                                                  "start": {
                                                    "line": 509,
                                                    "column": 99
                                                  },
                                                  "end": {
                                                    "line": 509,
                                                    "column": 100
                                                  }
                                                },
                                                "value": 2,
                                                "rawValue": 2,
                                                "raw": "2"
                                              },
                                              "operator": "*",
                                              "right": {
                                                "type": "MemberExpression",
                                                "start": 21486,
                                                "end": 21493,
                                                "loc": {
                                                  "start": {
                                                    "line": 509,
                                                    "column": 103
                                                  },
                                                  "end": {
                                                    "line": 509,
                                                    "column": 110
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 21486,
                                                  "end": 21490,
                                                  "loc": {
                                                    "start": {
                                                      "line": 509,
                                                      "column": 103
                                                    },
                                                    "end": {
                                                      "line": 509,
                                                      "column": 107
                                                    }
                                                  },
                                                  "name": "Math"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 21491,
                                                  "end": 21493,
                                                  "loc": {
                                                    "start": {
                                                      "line": 509,
                                                      "column": 108
                                                    },
                                                    "end": {
                                                      "line": 509,
                                                      "column": 110
                                                    }
                                                  },
                                                  "name": "PI"
                                                },
                                                "computed": false
                                              },
                                              "parenthesizedExpression": true
                                            },
                                            "operator": "+",
                                            "right": {
                                              "type": "Identifier",
                                              "start": 21497,
                                              "end": 21511,
                                              "loc": {
                                                "start": {
                                                  "line": 509,
                                                  "column": 114
                                                },
                                                "end": {
                                                  "line": 509,
                                                  "column": 128
                                                }
                                              },
                                              "name": "angleDeltaToOX"
                                            }
                                          },
                                          "operator": "-",
                                          "right": {
                                            "type": "Identifier",
                                            "start": 21514,
                                            "end": 21527,
                                            "loc": {
                                              "start": {
                                                "line": 509,
                                                "column": 131
                                              },
                                              "end": {
                                                "line": 509,
                                                "column": 144
                                              }
                                            },
                                            "name": "angleAxisToOX"
                                          },
                                          "parenthesizedExpression": true
                                        }
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 21546,
                                  "end": 21611,
                                  "loc": {
                                    "start": {
                                      "line": 510,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 510,
                                      "column": 81
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 21550,
                                      "end": 21610,
                                      "loc": {
                                        "start": {
                                          "line": 510,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 510,
                                          "column": 80
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 21550,
                                        "end": 21555,
                                        "loc": {
                                          "start": {
                                            "line": 510,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 510,
                                            "column": 25
                                          }
                                        },
                                        "name": "round"
                                      },
                                      "init": {
                                        "type": "CallExpression",
                                        "start": 21558,
                                        "end": 21610,
                                        "loc": {
                                          "start": {
                                            "line": 510,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 510,
                                            "column": 80
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 21558,
                                          "end": 21568,
                                          "loc": {
                                            "start": {
                                              "line": 510,
                                              "column": 28
                                            },
                                            "end": {
                                              "line": 510,
                                              "column": 38
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 21558,
                                            "end": 21562,
                                            "loc": {
                                              "start": {
                                                "line": 510,
                                                "column": 28
                                              },
                                              "end": {
                                                "line": 510,
                                                "column": 32
                                              }
                                            },
                                            "name": "Math"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 21563,
                                            "end": 21568,
                                            "loc": {
                                              "start": {
                                                "line": 510,
                                                "column": 33
                                              },
                                              "end": {
                                                "line": 510,
                                                "column": 38
                                              }
                                            },
                                            "name": "round"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "BinaryExpression",
                                            "start": 21569,
                                            "end": 21609,
                                            "loc": {
                                              "start": {
                                                "line": 510,
                                                "column": 39
                                              },
                                              "end": {
                                                "line": 510,
                                                "column": 79
                                              }
                                            },
                                            "left": {
                                              "type": "BinaryExpression",
                                              "start": 21569,
                                              "end": 21593,
                                              "loc": {
                                                "start": {
                                                  "line": 510,
                                                  "column": 39
                                                },
                                                "end": {
                                                  "line": 510,
                                                  "column": 63
                                                }
                                              },
                                              "left": {
                                                "type": "Identifier",
                                                "start": 21569,
                                                "end": 21573,
                                                "loc": {
                                                  "start": {
                                                    "line": 510,
                                                    "column": 39
                                                  },
                                                  "end": {
                                                    "line": 510,
                                                    "column": 43
                                                  }
                                                },
                                                "name": "diff"
                                              },
                                              "operator": "*",
                                              "right": {
                                                "type": "Identifier",
                                                "start": 21576,
                                                "end": 21593,
                                                "loc": {
                                                  "start": {
                                                    "line": 510,
                                                    "column": 46
                                                  },
                                                  "end": {
                                                    "line": 510,
                                                    "column": 63
                                                  }
                                                },
                                                "name": "nbShiftDirections"
                                              }
                                            },
                                            "operator": "/",
                                            "right": {
                                              "type": "BinaryExpression",
                                              "start": 21597,
                                              "end": 21608,
                                              "loc": {
                                                "start": {
                                                  "line": 510,
                                                  "column": 67
                                                },
                                                "end": {
                                                  "line": 510,
                                                  "column": 78
                                                }
                                              },
                                              "left": {
                                                "type": "Literal",
                                                "start": 21597,
                                                "end": 21598,
                                                "loc": {
                                                  "start": {
                                                    "line": 510,
                                                    "column": 67
                                                  },
                                                  "end": {
                                                    "line": 510,
                                                    "column": 68
                                                  }
                                                },
                                                "value": 2,
                                                "rawValue": 2,
                                                "raw": "2"
                                              },
                                              "operator": "*",
                                              "right": {
                                                "type": "MemberExpression",
                                                "start": 21601,
                                                "end": 21608,
                                                "loc": {
                                                  "start": {
                                                    "line": 510,
                                                    "column": 71
                                                  },
                                                  "end": {
                                                    "line": 510,
                                                    "column": 78
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 21601,
                                                  "end": 21605,
                                                  "loc": {
                                                    "start": {
                                                      "line": 510,
                                                      "column": 71
                                                    },
                                                    "end": {
                                                      "line": 510,
                                                      "column": 75
                                                    }
                                                  },
                                                  "name": "Math"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 21606,
                                                  "end": 21608,
                                                  "loc": {
                                                    "start": {
                                                      "line": 510,
                                                      "column": 76
                                                    },
                                                    "end": {
                                                      "line": 510,
                                                      "column": 78
                                                    }
                                                  },
                                                  "name": "PI"
                                                },
                                                "computed": false
                                              },
                                              "parenthesizedExpression": true
                                            }
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 21628,
                                  "end": 21682,
                                  "loc": {
                                    "start": {
                                      "line": 511,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 511,
                                      "column": 70
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 21632,
                                      "end": 21681,
                                      "loc": {
                                        "start": {
                                          "line": 511,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 511,
                                          "column": 69
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 21632,
                                        "end": 21637,
                                        "loc": {
                                          "start": {
                                            "line": 511,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 511,
                                            "column": 25
                                          }
                                        },
                                        "name": "angle"
                                      },
                                      "init": {
                                        "type": "BinaryExpression",
                                        "start": 21640,
                                        "end": 21681,
                                        "loc": {
                                          "start": {
                                            "line": 511,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 511,
                                            "column": 69
                                          }
                                        },
                                        "left": {
                                          "type": "BinaryExpression",
                                          "start": 21640,
                                          "end": 21661,
                                          "loc": {
                                            "start": {
                                              "line": 511,
                                              "column": 28
                                            },
                                            "end": {
                                              "line": 511,
                                              "column": 49
                                            }
                                          },
                                          "left": {
                                            "type": "BinaryExpression",
                                            "start": 21641,
                                            "end": 21652,
                                            "loc": {
                                              "start": {
                                                "line": 511,
                                                "column": 29
                                              },
                                              "end": {
                                                "line": 511,
                                                "column": 40
                                              }
                                            },
                                            "left": {
                                              "type": "Literal",
                                              "start": 21641,
                                              "end": 21642,
                                              "loc": {
                                                "start": {
                                                  "line": 511,
                                                  "column": 29
                                                },
                                                "end": {
                                                  "line": 511,
                                                  "column": 30
                                                }
                                              },
                                              "value": 2,
                                              "rawValue": 2,
                                              "raw": "2"
                                            },
                                            "operator": "*",
                                            "right": {
                                              "type": "MemberExpression",
                                              "start": 21645,
                                              "end": 21652,
                                              "loc": {
                                                "start": {
                                                  "line": 511,
                                                  "column": 33
                                                },
                                                "end": {
                                                  "line": 511,
                                                  "column": 40
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 21645,
                                                "end": 21649,
                                                "loc": {
                                                  "start": {
                                                    "line": 511,
                                                    "column": 33
                                                  },
                                                  "end": {
                                                    "line": 511,
                                                    "column": 37
                                                  }
                                                },
                                                "name": "Math"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 21650,
                                                "end": 21652,
                                                "loc": {
                                                  "start": {
                                                    "line": 511,
                                                    "column": 38
                                                  },
                                                  "end": {
                                                    "line": 511,
                                                    "column": 40
                                                  }
                                                },
                                                "name": "PI"
                                              },
                                              "computed": false
                                            },
                                            "parenthesizedExpression": true
                                          },
                                          "operator": "*",
                                          "right": {
                                            "type": "Identifier",
                                            "start": 21656,
                                            "end": 21661,
                                            "loc": {
                                              "start": {
                                                "line": 511,
                                                "column": 44
                                              },
                                              "end": {
                                                "line": 511,
                                                "column": 49
                                              }
                                            },
                                            "name": "round"
                                          }
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 21664,
                                          "end": 21681,
                                          "loc": {
                                            "start": {
                                              "line": 511,
                                              "column": 52
                                            },
                                            "end": {
                                              "line": 511,
                                              "column": 69
                                            }
                                          },
                                          "name": "nbShiftDirections"
                                        }
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 21699,
                                  "end": 21722,
                                  "loc": {
                                    "start": {
                                      "line": 512,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 512,
                                      "column": 39
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 21699,
                                    "end": 21721,
                                    "loc": {
                                      "start": {
                                        "line": 512,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 512,
                                        "column": 38
                                      }
                                    },
                                    "operator": "+=",
                                    "left": {
                                      "type": "Identifier",
                                      "start": 21699,
                                      "end": 21704,
                                      "loc": {
                                        "start": {
                                          "line": 512,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 512,
                                          "column": 21
                                        }
                                      },
                                      "name": "angle"
                                    },
                                    "right": {
                                      "type": "Identifier",
                                      "start": 21708,
                                      "end": 21721,
                                      "loc": {
                                        "start": {
                                          "line": 512,
                                          "column": 25
                                        },
                                        "end": {
                                          "line": 512,
                                          "column": 38
                                        }
                                      },
                                      "name": "angleAxisToOX"
                                    }
                                  }
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 21739,
                                  "end": 21806,
                                  "loc": {
                                    "start": {
                                      "line": 513,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 513,
                                      "column": 83
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 21743,
                                      "end": 21805,
                                      "loc": {
                                        "start": {
                                          "line": 513,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 513,
                                          "column": 82
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 21743,
                                        "end": 21746,
                                        "loc": {
                                          "start": {
                                            "line": 513,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 513,
                                            "column": 23
                                          }
                                        },
                                        "name": "dir"
                                      },
                                      "init": {
                                        "type": "NewExpression",
                                        "start": 21749,
                                        "end": 21805,
                                        "loc": {
                                          "start": {
                                            "line": 513,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 513,
                                            "column": 82
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 21753,
                                          "end": 21766,
                                          "loc": {
                                            "start": {
                                              "line": 513,
                                              "column": 30
                                            },
                                            "end": {
                                              "line": 513,
                                              "column": 43
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 21753,
                                            "end": 21758,
                                            "loc": {
                                              "start": {
                                                "line": 513,
                                                "column": 30
                                              },
                                              "end": {
                                                "line": 513,
                                                "column": 35
                                              }
                                            },
                                            "name": "THREE"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 21759,
                                            "end": 21766,
                                            "loc": {
                                              "start": {
                                                "line": 513,
                                                "column": 36
                                              },
                                              "end": {
                                                "line": 513,
                                                "column": 43
                                              }
                                            },
                                            "name": "Vector3"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "CallExpression",
                                            "start": 21767,
                                            "end": 21782,
                                            "loc": {
                                              "start": {
                                                "line": 513,
                                                "column": 44
                                              },
                                              "end": {
                                                "line": 513,
                                                "column": 59
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 21767,
                                              "end": 21775,
                                              "loc": {
                                                "start": {
                                                  "line": 513,
                                                  "column": 44
                                                },
                                                "end": {
                                                  "line": 513,
                                                  "column": 52
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 21767,
                                                "end": 21771,
                                                "loc": {
                                                  "start": {
                                                    "line": 513,
                                                    "column": 44
                                                  },
                                                  "end": {
                                                    "line": 513,
                                                    "column": 48
                                                  }
                                                },
                                                "name": "Math"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 21772,
                                                "end": 21775,
                                                "loc": {
                                                  "start": {
                                                    "line": 513,
                                                    "column": 49
                                                  },
                                                  "end": {
                                                    "line": 513,
                                                    "column": 52
                                                  }
                                                },
                                                "name": "cos"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 21776,
                                                "end": 21781,
                                                "loc": {
                                                  "start": {
                                                    "line": 513,
                                                    "column": 53
                                                  },
                                                  "end": {
                                                    "line": 513,
                                                    "column": 58
                                                  }
                                                },
                                                "name": "angle"
                                              }
                                            ]
                                          },
                                          {
                                            "type": "CallExpression",
                                            "start": 21784,
                                            "end": 21799,
                                            "loc": {
                                              "start": {
                                                "line": 513,
                                                "column": 61
                                              },
                                              "end": {
                                                "line": 513,
                                                "column": 76
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 21784,
                                              "end": 21792,
                                              "loc": {
                                                "start": {
                                                  "line": 513,
                                                  "column": 61
                                                },
                                                "end": {
                                                  "line": 513,
                                                  "column": 69
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 21784,
                                                "end": 21788,
                                                "loc": {
                                                  "start": {
                                                    "line": 513,
                                                    "column": 61
                                                  },
                                                  "end": {
                                                    "line": 513,
                                                    "column": 65
                                                  }
                                                },
                                                "name": "Math"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 21789,
                                                "end": 21792,
                                                "loc": {
                                                  "start": {
                                                    "line": 513,
                                                    "column": 66
                                                  },
                                                  "end": {
                                                    "line": 513,
                                                    "column": 69
                                                  }
                                                },
                                                "name": "sin"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 21793,
                                                "end": 21798,
                                                "loc": {
                                                  "start": {
                                                    "line": 513,
                                                    "column": 70
                                                  },
                                                  "end": {
                                                    "line": 513,
                                                    "column": 75
                                                  }
                                                },
                                                "name": "angle"
                                              }
                                            ]
                                          },
                                          {
                                            "type": "Literal",
                                            "start": 21801,
                                            "end": 21804,
                                            "loc": {
                                              "start": {
                                                "line": 513,
                                                "column": 78
                                              },
                                              "end": {
                                                "line": 513,
                                                "column": 81
                                              }
                                            },
                                            "value": 0,
                                            "rawValue": 0,
                                            "raw": "0.0"
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 21823,
                                  "end": 21858,
                                  "loc": {
                                    "start": {
                                      "line": 514,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 514,
                                      "column": 51
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 21823,
                                    "end": 21857,
                                    "loc": {
                                      "start": {
                                        "line": 514,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 514,
                                        "column": 50
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 21823,
                                      "end": 21841,
                                      "loc": {
                                        "start": {
                                          "line": 514,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 514,
                                          "column": 34
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 21823,
                                        "end": 21826,
                                        "loc": {
                                          "start": {
                                            "line": 514,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 514,
                                            "column": 19
                                          }
                                        },
                                        "name": "dir"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 21827,
                                        "end": 21841,
                                        "loc": {
                                          "start": {
                                            "line": 514,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 514,
                                            "column": 34
                                          }
                                        },
                                        "name": "multiplyScalar"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "CallExpression",
                                        "start": 21842,
                                        "end": 21856,
                                        "loc": {
                                          "start": {
                                            "line": 514,
                                            "column": 35
                                          },
                                          "end": {
                                            "line": 514,
                                            "column": 49
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 21842,
                                          "end": 21849,
                                          "loc": {
                                            "start": {
                                              "line": 514,
                                              "column": 35
                                            },
                                            "end": {
                                              "line": 514,
                                              "column": 42
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 21842,
                                            "end": 21845,
                                            "loc": {
                                              "start": {
                                                "line": 514,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 514,
                                                "column": 38
                                              }
                                            },
                                            "name": "dir"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 21846,
                                            "end": 21849,
                                            "loc": {
                                              "start": {
                                                "line": 514,
                                                "column": 39
                                              },
                                              "end": {
                                                "line": 514,
                                                "column": 42
                                              }
                                            },
                                            "name": "dot"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 21850,
                                            "end": 21855,
                                            "loc": {
                                              "start": {
                                                "line": 514,
                                                "column": 43
                                              },
                                              "end": {
                                                "line": 514,
                                                "column": 48
                                              }
                                            },
                                            "name": "delta"
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 21875,
                                  "end": 21916,
                                  "loc": {
                                    "start": {
                                      "line": 515,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 515,
                                      "column": 57
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 21875,
                                    "end": 21915,
                                    "loc": {
                                      "start": {
                                        "line": 515,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 515,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 21875,
                                      "end": 21894,
                                      "loc": {
                                        "start": {
                                          "line": 515,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 515,
                                          "column": 35
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 21875,
                                        "end": 21883,
                                        "loc": {
                                          "start": {
                                            "line": 515,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 515,
                                            "column": 24
                                          }
                                        },
                                        "name": "toReturn"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 21884,
                                        "end": 21894,
                                        "loc": {
                                          "start": {
                                            "line": 515,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 515,
                                            "column": 35
                                          }
                                        },
                                        "name": "addVectors"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 21895,
                                        "end": 21909,
                                        "loc": {
                                          "start": {
                                            "line": 515,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 515,
                                            "column": 50
                                          }
                                        },
                                        "name": "neighbourPoint"
                                      },
                                      {
                                        "type": "Identifier",
                                        "start": 21911,
                                        "end": 21914,
                                        "loc": {
                                          "start": {
                                            "line": 515,
                                            "column": 52
                                          },
                                          "end": {
                                            "line": 515,
                                            "column": 55
                                          }
                                        },
                                        "name": "dir"
                                      }
                                    ]
                                  }
                                }
                              ]
                            },
                            "alternate": null
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 21944,
                            "end": 21960,
                            "loc": {
                              "start": {
                                "line": 518,
                                "column": 12
                              },
                              "end": {
                                "line": 518,
                                "column": 28
                              }
                            },
                            "argument": {
                              "type": "Identifier",
                              "start": 21951,
                              "end": 21959,
                              "loc": {
                                "start": {
                                  "line": 518,
                                  "column": 19
                                },
                                "end": {
                                  "line": 518,
                                  "column": 27
                                }
                              },
                              "name": "toReturn"
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 21980,
                      "end": 22102,
                      "loc": {
                        "start": {
                          "line": 521,
                          "column": 8
                        },
                        "end": {
                          "line": 521,
                          "column": 130
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 21984,
                          "end": 22101,
                          "loc": {
                            "start": {
                              "line": 521,
                              "column": 12
                            },
                            "end": {
                              "line": 521,
                              "column": 129
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 21984,
                            "end": 22001,
                            "loc": {
                              "start": {
                                "line": 521,
                                "column": 12
                              },
                              "end": {
                                "line": 521,
                                "column": 29
                              }
                            },
                            "name": "nbShiftDirections"
                          },
                          "init": {
                            "type": "ConditionalExpression",
                            "start": 22004,
                            "end": 22101,
                            "loc": {
                              "start": {
                                "line": 521,
                                "column": 32
                              },
                              "end": {
                                "line": 521,
                                "column": 129
                              }
                            },
                            "test": {
                              "type": "MemberExpression",
                              "start": 22004,
                              "end": 22046,
                              "loc": {
                                "start": {
                                  "line": 521,
                                  "column": 32
                                },
                                "end": {
                                  "line": 521,
                                  "column": 74
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 22004,
                                "end": 22037,
                                "loc": {
                                  "start": {
                                    "line": 521,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 521,
                                    "column": 65
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 22004,
                                  "end": 22025,
                                  "loc": {
                                    "start": {
                                      "line": 521,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 521,
                                      "column": 53
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 22004,
                                    "end": 22012,
                                    "loc": {
                                      "start": {
                                        "line": 521,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 521,
                                        "column": 40
                                      }
                                    },
                                    "name": "sketcher"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 22013,
                                    "end": 22025,
                                    "loc": {
                                      "start": {
                                        "line": 521,
                                        "column": 41
                                      },
                                      "end": {
                                        "line": 521,
                                        "column": 53
                                      }
                                    },
                                    "name": "__parentView"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 22026,
                                  "end": 22037,
                                  "loc": {
                                    "start": {
                                      "line": 521,
                                      "column": 54
                                    },
                                    "end": {
                                      "line": 521,
                                      "column": 65
                                    }
                                  },
                                  "name": "interaction"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 22038,
                                "end": 22046,
                                "loc": {
                                  "start": {
                                    "line": 521,
                                    "column": 66
                                  },
                                  "end": {
                                    "line": 521,
                                    "column": 74
                                  }
                                },
                                "name": "shiftKey"
                              },
                              "computed": false
                            },
                            "consequent": {
                              "type": "MemberExpression",
                              "start": 22049,
                              "end": 22097,
                              "loc": {
                                "start": {
                                  "line": 521,
                                  "column": 77
                                },
                                "end": {
                                  "line": 521,
                                  "column": 125
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 22049,
                                "end": 22081,
                                "loc": {
                                  "start": {
                                    "line": 521,
                                    "column": 77
                                  },
                                  "end": {
                                    "line": 521,
                                    "column": 109
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 22049,
                                  "end": 22057,
                                  "loc": {
                                    "start": {
                                      "line": 521,
                                      "column": 77
                                    },
                                    "end": {
                                      "line": 521,
                                      "column": 85
                                    }
                                  },
                                  "name": "sketcher"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 22058,
                                  "end": 22081,
                                  "loc": {
                                    "start": {
                                      "line": 521,
                                      "column": 86
                                    },
                                    "end": {
                                      "line": 521,
                                      "column": 109
                                    }
                                  },
                                  "name": "__sketchControlsHandler"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 22082,
                                "end": 22097,
                                "loc": {
                                  "start": {
                                    "line": 521,
                                    "column": 110
                                  },
                                  "end": {
                                    "line": 521,
                                    "column": 125
                                  }
                                },
                                "name": "shiftDirections"
                              },
                              "computed": false
                            },
                            "alternate": {
                              "type": "Literal",
                              "start": 22100,
                              "end": 22101,
                              "loc": {
                                "start": {
                                  "line": 521,
                                  "column": 128
                                },
                                "end": {
                                  "line": 521,
                                  "column": 129
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 22111,
                      "end": 22189,
                      "loc": {
                        "start": {
                          "line": 522,
                          "column": 8
                        },
                        "end": {
                          "line": 522,
                          "column": 86
                        }
                      },
                      "test": {
                        "type": "LogicalExpression",
                        "start": 22115,
                        "end": 22162,
                        "loc": {
                          "start": {
                            "line": 522,
                            "column": 12
                          },
                          "end": {
                            "line": 522,
                            "column": 59
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 22115,
                          "end": 22132,
                          "loc": {
                            "start": {
                              "line": 522,
                              "column": 12
                            },
                            "end": {
                              "line": 522,
                              "column": 29
                            }
                          },
                          "name": "nbShiftDirections"
                        },
                        "operator": "&&",
                        "right": {
                          "type": "BinaryExpression",
                          "start": 22136,
                          "end": 22162,
                          "loc": {
                            "start": {
                              "line": 522,
                              "column": 33
                            },
                            "end": {
                              "line": 522,
                              "column": 59
                            }
                          },
                          "left": {
                            "type": "MemberExpression",
                            "start": 22136,
                            "end": 22146,
                            "loc": {
                              "start": {
                                "line": 522,
                                "column": 33
                              },
                              "end": {
                                "line": 522,
                                "column": 43
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 22136,
                              "end": 22139,
                              "loc": {
                                "start": {
                                  "line": 522,
                                  "column": 33
                                },
                                "end": {
                                  "line": 522,
                                  "column": 36
                                }
                              },
                              "name": "obj"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 22140,
                              "end": 22146,
                              "loc": {
                                "start": {
                                  "line": 522,
                                  "column": 37
                                },
                                "end": {
                                  "line": 522,
                                  "column": 43
                                }
                              },
                              "name": "parent"
                            },
                            "computed": false
                          },
                          "operator": "instanceof",
                          "right": {
                            "type": "Identifier",
                            "start": 22158,
                            "end": 22162,
                            "loc": {
                              "start": {
                                "line": 522,
                                "column": 55
                              },
                              "end": {
                                "line": 522,
                                "column": 59
                              }
                            },
                            "name": "Line"
                          }
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 22164,
                        "end": 22189,
                        "loc": {
                          "start": {
                            "line": 522,
                            "column": 61
                          },
                          "end": {
                            "line": 522,
                            "column": 86
                          }
                        },
                        "argument": {
                          "type": "CallExpression",
                          "start": 22171,
                          "end": 22188,
                          "loc": {
                            "start": {
                              "line": 522,
                              "column": 68
                            },
                            "end": {
                              "line": 522,
                              "column": 85
                            }
                          },
                          "callee": {
                            "type": "Identifier",
                            "start": 22171,
                            "end": 22186,
                            "loc": {
                              "start": {
                                "line": 522,
                                "column": 68
                              },
                              "end": {
                                "line": 522,
                                "column": 83
                              }
                            },
                            "name": "snapToDirection"
                          },
                          "arguments": []
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 22199,
                      "end": 22236,
                      "loc": {
                        "start": {
                          "line": 524,
                          "column": 8
                        },
                        "end": {
                          "line": 524,
                          "column": 45
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 22203,
                          "end": 22235,
                          "loc": {
                            "start": {
                              "line": 524,
                              "column": 12
                            },
                            "end": {
                              "line": 524,
                              "column": 44
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 22203,
                            "end": 22211,
                            "loc": {
                              "start": {
                                "line": 524,
                                "column": 12
                              },
                              "end": {
                                "line": 524,
                                "column": 20
                              }
                            },
                            "name": "toReturn"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 22214,
                            "end": 22235,
                            "loc": {
                              "start": {
                                "line": 524,
                                "column": 23
                              },
                              "end": {
                                "line": 524,
                                "column": 44
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 22214,
                              "end": 22233,
                              "loc": {
                                "start": {
                                  "line": 524,
                                  "column": 23
                                },
                                "end": {
                                  "line": 524,
                                  "column": 42
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 22214,
                                "end": 22227,
                                "loc": {
                                  "start": {
                                    "line": 524,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 524,
                                    "column": 36
                                  }
                                },
                                "name": "mousePosition"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 22228,
                                "end": 22233,
                                "loc": {
                                  "start": {
                                    "line": 524,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 524,
                                    "column": 42
                                  }
                                },
                                "name": "clone"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 22246,
                      "end": 22268,
                      "loc": {
                        "start": {
                          "line": 526,
                          "column": 8
                        },
                        "end": {
                          "line": 526,
                          "column": 30
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 22250,
                          "end": 22267,
                          "loc": {
                            "start": {
                              "line": 526,
                              "column": 12
                            },
                            "end": {
                              "line": 526,
                              "column": 29
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 22250,
                            "end": 22262,
                            "loc": {
                              "start": {
                                "line": 526,
                                "column": 12
                              },
                              "end": {
                                "line": 526,
                                "column": 24
                              }
                            },
                            "name": "pointsToSnap"
                          },
                          "init": {
                            "type": "ArrayExpression",
                            "start": 22265,
                            "end": 22267,
                            "loc": {
                              "start": {
                                "line": 526,
                                "column": 27
                              },
                              "end": {
                                "line": 526,
                                "column": 29
                              }
                            },
                            "elements": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 22277,
                      "end": 22498,
                      "loc": {
                        "start": {
                          "line": 527,
                          "column": 8
                        },
                        "end": {
                          "line": 531,
                          "column": 115
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 22281,
                        "end": 22302,
                        "loc": {
                          "start": {
                            "line": 527,
                            "column": 12
                          },
                          "end": {
                            "line": 527,
                            "column": 33
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 22281,
                          "end": 22284,
                          "loc": {
                            "start": {
                              "line": 527,
                              "column": 12
                            },
                            "end": {
                              "line": 527,
                              "column": 15
                            }
                          },
                          "name": "obj"
                        },
                        "operator": "instanceof",
                        "right": {
                          "type": "Identifier",
                          "start": 22297,
                          "end": 22302,
                          "loc": {
                            "start": {
                              "line": 527,
                              "column": 28
                            },
                            "end": {
                              "line": 527,
                              "column": 33
                            }
                          },
                          "name": "Point"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 22316,
                        "end": 22337,
                        "loc": {
                          "start": {
                            "line": 528,
                            "column": 12
                          },
                          "end": {
                            "line": 528,
                            "column": 33
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 22316,
                          "end": 22336,
                          "loc": {
                            "start": {
                              "line": 528,
                              "column": 12
                            },
                            "end": {
                              "line": 528,
                              "column": 32
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "Identifier",
                            "start": 22316,
                            "end": 22328,
                            "loc": {
                              "start": {
                                "line": 528,
                                "column": 12
                              },
                              "end": {
                                "line": 528,
                                "column": 24
                              }
                            },
                            "name": "pointsToSnap"
                          },
                          "right": {
                            "type": "ArrayExpression",
                            "start": 22331,
                            "end": 22336,
                            "loc": {
                              "start": {
                                "line": 528,
                                "column": 27
                              },
                              "end": {
                                "line": 528,
                                "column": 32
                              }
                            },
                            "elements": [
                              {
                                "type": "Identifier",
                                "start": 22332,
                                "end": 22335,
                                "loc": {
                                  "start": {
                                    "line": 528,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 528,
                                    "column": 31
                                  }
                                },
                                "name": "obj"
                              }
                            ]
                          }
                        }
                      },
                      "alternate": {
                        "type": "ExpressionStatement",
                        "start": 22395,
                        "end": 22498,
                        "loc": {
                          "start": {
                            "line": 531,
                            "column": 12
                          },
                          "end": {
                            "line": 531,
                            "column": 115
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 22395,
                          "end": 22497,
                          "loc": {
                            "start": {
                              "line": 531,
                              "column": 12
                            },
                            "end": {
                              "line": 531,
                              "column": 114
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 22395,
                            "end": 22424,
                            "loc": {
                              "start": {
                                "line": 531,
                                "column": 12
                              },
                              "end": {
                                "line": 531,
                                "column": 41
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 22395,
                              "end": 22401,
                              "loc": {
                                "start": {
                                  "line": 531,
                                  "column": 12
                                },
                                "end": {
                                  "line": 531,
                                  "column": 18
                                }
                              },
                              "name": "Sketch",
                              "leadingComments": null
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 22402,
                              "end": 22424,
                              "loc": {
                                "start": {
                                  "line": 531,
                                  "column": 19
                                },
                                "end": {
                                  "line": 531,
                                  "column": 41
                                }
                              },
                              "name": "ForObjectsWithChildren"
                            },
                            "computed": false,
                            "leadingComments": null
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 22425,
                              "end": 22428,
                              "loc": {
                                "start": {
                                  "line": 531,
                                  "column": 42
                                },
                                "end": {
                                  "line": 531,
                                  "column": 45
                                }
                              },
                              "name": "obj"
                            },
                            {
                              "type": "FunctionExpression",
                              "start": 22430,
                              "end": 22496,
                              "loc": {
                                "start": {
                                  "line": 531,
                                  "column": 47
                                },
                                "end": {
                                  "line": 531,
                                  "column": 113
                                }
                              },
                              "id": null,
                              "generator": false,
                              "expression": false,
                              "async": false,
                              "params": [
                                {
                                  "type": "Identifier",
                                  "start": 22440,
                                  "end": 22443,
                                  "loc": {
                                    "start": {
                                      "line": 531,
                                      "column": 57
                                    },
                                    "end": {
                                      "line": 531,
                                      "column": 60
                                    }
                                  },
                                  "name": "arg"
                                }
                              ],
                              "body": {
                                "type": "BlockStatement",
                                "start": 22445,
                                "end": 22496,
                                "loc": {
                                  "start": {
                                    "line": 531,
                                    "column": 62
                                  },
                                  "end": {
                                    "line": 531,
                                    "column": 113
                                  }
                                },
                                "body": [
                                  {
                                    "type": "IfStatement",
                                    "start": 22447,
                                    "end": 22495,
                                    "loc": {
                                      "start": {
                                        "line": 531,
                                        "column": 64
                                      },
                                      "end": {
                                        "line": 531,
                                        "column": 112
                                      }
                                    },
                                    "test": {
                                      "type": "BinaryExpression",
                                      "start": 22450,
                                      "end": 22470,
                                      "loc": {
                                        "start": {
                                          "line": 531,
                                          "column": 67
                                        },
                                        "end": {
                                          "line": 531,
                                          "column": 87
                                        }
                                      },
                                      "left": {
                                        "type": "Identifier",
                                        "start": 22450,
                                        "end": 22453,
                                        "loc": {
                                          "start": {
                                            "line": 531,
                                            "column": 67
                                          },
                                          "end": {
                                            "line": 531,
                                            "column": 70
                                          }
                                        },
                                        "name": "arg"
                                      },
                                      "operator": "instanceof",
                                      "right": {
                                        "type": "Identifier",
                                        "start": 22465,
                                        "end": 22470,
                                        "loc": {
                                          "start": {
                                            "line": 531,
                                            "column": 82
                                          },
                                          "end": {
                                            "line": 531,
                                            "column": 87
                                          }
                                        },
                                        "name": "Point"
                                      }
                                    },
                                    "consequent": {
                                      "type": "ExpressionStatement",
                                      "start": 22472,
                                      "end": 22495,
                                      "loc": {
                                        "start": {
                                          "line": 531,
                                          "column": 89
                                        },
                                        "end": {
                                          "line": 531,
                                          "column": 112
                                        }
                                      },
                                      "expression": {
                                        "type": "CallExpression",
                                        "start": 22472,
                                        "end": 22494,
                                        "loc": {
                                          "start": {
                                            "line": 531,
                                            "column": 89
                                          },
                                          "end": {
                                            "line": 531,
                                            "column": 111
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 22472,
                                          "end": 22489,
                                          "loc": {
                                            "start": {
                                              "line": 531,
                                              "column": 89
                                            },
                                            "end": {
                                              "line": 531,
                                              "column": 106
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 22472,
                                            "end": 22484,
                                            "loc": {
                                              "start": {
                                                "line": 531,
                                                "column": 89
                                              },
                                              "end": {
                                                "line": 531,
                                                "column": 101
                                              }
                                            },
                                            "name": "pointsToSnap"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 22485,
                                            "end": 22489,
                                            "loc": {
                                              "start": {
                                                "line": 531,
                                                "column": 102
                                              },
                                              "end": {
                                                "line": 531,
                                                "column": 106
                                              }
                                            },
                                            "name": "push"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 22490,
                                            "end": 22493,
                                            "loc": {
                                              "start": {
                                                "line": 531,
                                                "column": 107
                                              },
                                              "end": {
                                                "line": 531,
                                                "column": 110
                                              }
                                            },
                                            "name": "arg"
                                          }
                                        ]
                                      }
                                    },
                                    "alternate": null
                                  }
                                ]
                              }
                            }
                          ],
                          "leadingComments": null
                        },
                        "leadingComments": [
                          {
                            "type": "CommentLine",
                            "value": "/return toReturn;",
                            "start": 22363,
                            "end": 22382,
                            "loc": {
                              "start": {
                                "line": 530,
                                "column": 12
                              },
                              "end": {
                                "line": 530,
                                "column": 31
                              }
                            },
                            "range": [
                              22363,
                              22382
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 22508,
                      "end": 22564,
                      "loc": {
                        "start": {
                          "line": 533,
                          "column": 8
                        },
                        "end": {
                          "line": 533,
                          "column": 64
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 22512,
                          "end": 22563,
                          "loc": {
                            "start": {
                              "line": 533,
                              "column": 12
                            },
                            "end": {
                              "line": 533,
                              "column": 63
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 22512,
                            "end": 22536,
                            "loc": {
                              "start": {
                                "line": 533,
                                "column": 12
                              },
                              "end": {
                                "line": 533,
                                "column": 36
                              }
                            },
                            "name": "fromMousePositionToPoint"
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 22539,
                            "end": 22563,
                            "loc": {
                              "start": {
                                "line": 533,
                                "column": 39
                              },
                              "end": {
                                "line": 533,
                                "column": 63
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 22543,
                              "end": 22556,
                              "loc": {
                                "start": {
                                  "line": 533,
                                  "column": 43
                                },
                                "end": {
                                  "line": 533,
                                  "column": 56
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 22543,
                                "end": 22548,
                                "loc": {
                                  "start": {
                                    "line": 533,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 533,
                                    "column": 48
                                  }
                                },
                                "name": "THREE"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 22549,
                                "end": 22556,
                                "loc": {
                                  "start": {
                                    "line": 533,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 533,
                                    "column": 56
                                  }
                                },
                                "name": "Vector3"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Literal",
                                "start": 22557,
                                "end": 22558,
                                "loc": {
                                  "start": {
                                    "line": 533,
                                    "column": 57
                                  },
                                  "end": {
                                    "line": 533,
                                    "column": 58
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              },
                              {
                                "type": "Literal",
                                "start": 22559,
                                "end": 22560,
                                "loc": {
                                  "start": {
                                    "line": 533,
                                    "column": 59
                                  },
                                  "end": {
                                    "line": 533,
                                    "column": 60
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              },
                              {
                                "type": "Literal",
                                "start": 22561,
                                "end": 22562,
                                "loc": {
                                  "start": {
                                    "line": 533,
                                    "column": 61
                                  },
                                  "end": {
                                    "line": 533,
                                    "column": 62
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 22574,
                      "end": 22601,
                      "loc": {
                        "start": {
                          "line": 535,
                          "column": 8
                        },
                        "end": {
                          "line": 535,
                          "column": 35
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 22578,
                          "end": 22600,
                          "loc": {
                            "start": {
                              "line": 535,
                              "column": 12
                            },
                            "end": {
                              "line": 535,
                              "column": 34
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 22578,
                            "end": 22586,
                            "loc": {
                              "start": {
                                "line": 535,
                                "column": 12
                              },
                              "end": {
                                "line": 535,
                                "column": 20
                              }
                            },
                            "name": "distance"
                          },
                          "init": {
                            "type": "Identifier",
                            "start": 22589,
                            "end": 22600,
                            "loc": {
                              "start": {
                                "line": 535,
                                "column": 23
                              },
                              "end": {
                                "line": 535,
                                "column": 34
                              }
                            },
                            "name": "maxDistance"
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 22610,
                      "end": 22626,
                      "loc": {
                        "start": {
                          "line": 536,
                          "column": 8
                        },
                        "end": {
                          "line": 536,
                          "column": 24
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 22614,
                          "end": 22625,
                          "loc": {
                            "start": {
                              "line": 536,
                              "column": 12
                            },
                            "end": {
                              "line": 536,
                              "column": 23
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 22614,
                            "end": 22618,
                            "loc": {
                              "start": {
                                "line": 536,
                                "column": 12
                              },
                              "end": {
                                "line": 536,
                                "column": 16
                              }
                            },
                            "name": "self"
                          },
                          "init": {
                            "type": "ThisExpression",
                            "start": 22621,
                            "end": 22625,
                            "loc": {
                              "start": {
                                "line": 536,
                                "column": 19
                              },
                              "end": {
                                "line": 536,
                                "column": 23
                              }
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 22635,
                      "end": 23442,
                      "loc": {
                        "start": {
                          "line": 537,
                          "column": 8
                        },
                        "end": {
                          "line": 550,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 22635,
                        "end": 23441,
                        "loc": {
                          "start": {
                            "line": 537,
                            "column": 8
                          },
                          "end": {
                            "line": 550,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 22635,
                          "end": 22655,
                          "loc": {
                            "start": {
                              "line": 537,
                              "column": 8
                            },
                            "end": {
                              "line": 537,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 22635,
                            "end": 22647,
                            "loc": {
                              "start": {
                                "line": 537,
                                "column": 8
                              },
                              "end": {
                                "line": 537,
                                "column": 20
                              }
                            },
                            "name": "pointsToSnap"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 22648,
                            "end": 22655,
                            "loc": {
                              "start": {
                                "line": 537,
                                "column": 21
                              },
                              "end": {
                                "line": 537,
                                "column": 28
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "FunctionExpression",
                            "start": 22656,
                            "end": 23440,
                            "loc": {
                              "start": {
                                "line": 537,
                                "column": 29
                              },
                              "end": {
                                "line": 550,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 22665,
                                "end": 22674,
                                "loc": {
                                  "start": {
                                    "line": 537,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 537,
                                    "column": 47
                                  }
                                },
                                "name": "geomPoint"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 22676,
                              "end": 23440,
                              "loc": {
                                "start": {
                                  "line": 537,
                                  "column": 49
                                },
                                "end": {
                                  "line": 550,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "IfStatement",
                                  "start": 22690,
                                  "end": 22796,
                                  "loc": {
                                    "start": {
                                      "line": 538,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 538,
                                      "column": 118
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 22694,
                                    "end": 22721,
                                    "loc": {
                                      "start": {
                                        "line": 538,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 538,
                                        "column": 43
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 22694,
                                      "end": 22707,
                                      "loc": {
                                        "start": {
                                          "line": 538,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 538,
                                          "column": 29
                                        }
                                      },
                                      "name": "lastDragPoint"
                                    },
                                    "operator": "!==",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 22712,
                                      "end": 22721,
                                      "loc": {
                                        "start": {
                                          "line": 538,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 538,
                                          "column": 43
                                        }
                                      },
                                      "name": "undefined"
                                    }
                                  },
                                  "consequent": {
                                    "type": "ExpressionStatement",
                                    "start": 22723,
                                    "end": 22796,
                                    "loc": {
                                      "start": {
                                        "line": 538,
                                        "column": 45
                                      },
                                      "end": {
                                        "line": 538,
                                        "column": 118
                                      }
                                    },
                                    "expression": {
                                      "type": "AssignmentExpression",
                                      "start": 22723,
                                      "end": 22795,
                                      "loc": {
                                        "start": {
                                          "line": 538,
                                          "column": 45
                                        },
                                        "end": {
                                          "line": 538,
                                          "column": 117
                                        }
                                      },
                                      "operator": "=",
                                      "left": {
                                        "type": "Identifier",
                                        "start": 22723,
                                        "end": 22747,
                                        "loc": {
                                          "start": {
                                            "line": 538,
                                            "column": 45
                                          },
                                          "end": {
                                            "line": 538,
                                            "column": 69
                                          }
                                        },
                                        "name": "fromMousePositionToPoint"
                                      },
                                      "right": {
                                        "type": "CallExpression",
                                        "start": 22750,
                                        "end": 22795,
                                        "loc": {
                                          "start": {
                                            "line": 538,
                                            "column": 72
                                          },
                                          "end": {
                                            "line": 538,
                                            "column": 117
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 22750,
                                          "end": 22780,
                                          "loc": {
                                            "start": {
                                              "line": 538,
                                              "column": 72
                                            },
                                            "end": {
                                              "line": 538,
                                              "column": 102
                                            }
                                          },
                                          "object": {
                                            "type": "CallExpression",
                                            "start": 22750,
                                            "end": 22776,
                                            "loc": {
                                              "start": {
                                                "line": 538,
                                                "column": 72
                                              },
                                              "end": {
                                                "line": 538,
                                                "column": 98
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 22750,
                                              "end": 22774,
                                              "loc": {
                                                "start": {
                                                  "line": 538,
                                                  "column": 72
                                                },
                                                "end": {
                                                  "line": 538,
                                                  "column": 96
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 22750,
                                                "end": 22768,
                                                "loc": {
                                                  "start": {
                                                    "line": 538,
                                                    "column": 72
                                                  },
                                                  "end": {
                                                    "line": 538,
                                                    "column": 90
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 22750,
                                                  "end": 22759,
                                                  "loc": {
                                                    "start": {
                                                      "line": 538,
                                                      "column": 72
                                                    },
                                                    "end": {
                                                      "line": 538,
                                                      "column": 81
                                                    }
                                                  },
                                                  "name": "geomPoint"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 22760,
                                                  "end": 22768,
                                                  "loc": {
                                                    "start": {
                                                      "line": 538,
                                                      "column": 82
                                                    },
                                                    "end": {
                                                      "line": 538,
                                                      "column": 90
                                                    }
                                                  },
                                                  "name": "position"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 22769,
                                                "end": 22774,
                                                "loc": {
                                                  "start": {
                                                    "line": 538,
                                                    "column": 91
                                                  },
                                                  "end": {
                                                    "line": 538,
                                                    "column": 96
                                                  }
                                                },
                                                "name": "clone"
                                              },
                                              "computed": false
                                            },
                                            "arguments": []
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 22777,
                                            "end": 22780,
                                            "loc": {
                                              "start": {
                                                "line": 538,
                                                "column": 99
                                              },
                                              "end": {
                                                "line": 538,
                                                "column": 102
                                              }
                                            },
                                            "name": "sub"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 22781,
                                            "end": 22794,
                                            "loc": {
                                              "start": {
                                                "line": 538,
                                                "column": 103
                                              },
                                              "end": {
                                                "line": 538,
                                                "column": 116
                                              }
                                            },
                                            "name": "lastDragPoint"
                                          }
                                        ]
                                      }
                                    }
                                  },
                                  "alternate": null
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 22809,
                                  "end": 22850,
                                  "loc": {
                                    "start": {
                                      "line": 539,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 539,
                                      "column": 53
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 22813,
                                      "end": 22849,
                                      "loc": {
                                        "start": {
                                          "line": 539,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 539,
                                          "column": 52
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 22813,
                                        "end": 22825,
                                        "loc": {
                                          "start": {
                                            "line": 539,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 539,
                                            "column": 28
                                          }
                                        },
                                        "name": "snapPosition"
                                      },
                                      "init": {
                                        "type": "CallExpression",
                                        "start": 22828,
                                        "end": 22849,
                                        "loc": {
                                          "start": {
                                            "line": 539,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 539,
                                            "column": 52
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 22828,
                                          "end": 22847,
                                          "loc": {
                                            "start": {
                                              "line": 539,
                                              "column": 31
                                            },
                                            "end": {
                                              "line": 539,
                                              "column": 50
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 22828,
                                            "end": 22841,
                                            "loc": {
                                              "start": {
                                                "line": 539,
                                                "column": 31
                                              },
                                              "end": {
                                                "line": 539,
                                                "column": 44
                                              }
                                            },
                                            "name": "mousePosition"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 22842,
                                            "end": 22847,
                                            "loc": {
                                              "start": {
                                                "line": 539,
                                                "column": 45
                                              },
                                              "end": {
                                                "line": 539,
                                                "column": 50
                                              }
                                            },
                                            "name": "clone"
                                          },
                                          "computed": false
                                        },
                                        "arguments": []
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 22863,
                                  "end": 22933,
                                  "loc": {
                                    "start": {
                                      "line": 540,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 540,
                                      "column": 82
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 22867,
                                    "end": 22888,
                                    "loc": {
                                      "start": {
                                        "line": 540,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 540,
                                        "column": 37
                                      }
                                    },
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 22867,
                                      "end": 22875,
                                      "loc": {
                                        "start": {
                                          "line": 540,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 540,
                                          "column": 24
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 22867,
                                        "end": 22870,
                                        "loc": {
                                          "start": {
                                            "line": 540,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 540,
                                            "column": 19
                                          }
                                        },
                                        "name": "obj"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 22871,
                                        "end": 22875,
                                        "loc": {
                                          "start": {
                                            "line": 540,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 540,
                                            "column": 24
                                          }
                                        },
                                        "name": "name"
                                      },
                                      "computed": false
                                    },
                                    "operator": "!==",
                                    "right": {
                                      "type": "Literal",
                                      "start": 22880,
                                      "end": 22888,
                                      "loc": {
                                        "start": {
                                          "line": 540,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 540,
                                          "column": 37
                                        }
                                      },
                                      "value": "center",
                                      "rawValue": "center",
                                      "raw": "'center'"
                                    }
                                  },
                                  "consequent": {
                                    "type": "ExpressionStatement",
                                    "start": 22890,
                                    "end": 22933,
                                    "loc": {
                                      "start": {
                                        "line": 540,
                                        "column": 39
                                      },
                                      "end": {
                                        "line": 540,
                                        "column": 82
                                      }
                                    },
                                    "expression": {
                                      "type": "CallExpression",
                                      "start": 22890,
                                      "end": 22932,
                                      "loc": {
                                        "start": {
                                          "line": 540,
                                          "column": 39
                                        },
                                        "end": {
                                          "line": 540,
                                          "column": 81
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 22890,
                                        "end": 22906,
                                        "loc": {
                                          "start": {
                                            "line": 540,
                                            "column": 39
                                          },
                                          "end": {
                                            "line": 540,
                                            "column": 55
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 22890,
                                          "end": 22902,
                                          "loc": {
                                            "start": {
                                              "line": 540,
                                              "column": 39
                                            },
                                            "end": {
                                              "line": 540,
                                              "column": 51
                                            }
                                          },
                                          "name": "snapPosition"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 22903,
                                          "end": 22906,
                                          "loc": {
                                            "start": {
                                              "line": 540,
                                              "column": 52
                                            },
                                            "end": {
                                              "line": 540,
                                              "column": 55
                                            }
                                          },
                                          "name": "add"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 22907,
                                          "end": 22931,
                                          "loc": {
                                            "start": {
                                              "line": 540,
                                              "column": 56
                                            },
                                            "end": {
                                              "line": 540,
                                              "column": 80
                                            }
                                          },
                                          "name": "fromMousePositionToPoint"
                                        }
                                      ]
                                    }
                                  },
                                  "alternate": null
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 22946,
                                  "end": 23116,
                                  "loc": {
                                    "start": {
                                      "line": 541,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 543,
                                      "column": 14
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 22950,
                                      "end": 23115,
                                      "loc": {
                                        "start": {
                                          "line": 541,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 543,
                                          "column": 13
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 22950,
                                        "end": 22962,
                                        "loc": {
                                          "start": {
                                            "line": 541,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 541,
                                            "column": 28
                                          }
                                        },
                                        "name": "snappedPoint"
                                      },
                                      "init": {
                                        "type": "CallExpression",
                                        "start": 22965,
                                        "end": 23115,
                                        "loc": {
                                          "start": {
                                            "line": 541,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 543,
                                            "column": 13
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 22965,
                                          "end": 22989,
                                          "loc": {
                                            "start": {
                                              "line": 541,
                                              "column": 31
                                            },
                                            "end": {
                                              "line": 541,
                                              "column": 55
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 22965,
                                            "end": 22969,
                                            "loc": {
                                              "start": {
                                                "line": 541,
                                                "column": 31
                                              },
                                              "end": {
                                                "line": 541,
                                                "column": 35
                                              }
                                            },
                                            "name": "self"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 22970,
                                            "end": 22989,
                                            "loc": {
                                              "start": {
                                                "line": 541,
                                                "column": 36
                                              },
                                              "end": {
                                                "line": 541,
                                                "column": 55
                                              }
                                            },
                                            "name": "getClosestSnapPoint"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 23007,
                                            "end": 23019,
                                            "loc": {
                                              "start": {
                                                "line": 542,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 542,
                                                "column": 28
                                              }
                                            },
                                            "name": "snapPosition"
                                          },
                                          {
                                            "type": "Identifier",
                                            "start": 23021,
                                            "end": 23032,
                                            "loc": {
                                              "start": {
                                                "line": 542,
                                                "column": 30
                                              },
                                              "end": {
                                                "line": 542,
                                                "column": 41
                                              }
                                            },
                                            "name": "maxDistance"
                                          },
                                          {
                                            "type": "ArrowFunctionExpression",
                                            "start": 23034,
                                            "end": 23101,
                                            "loc": {
                                              "start": {
                                                "line": 542,
                                                "column": 43
                                              },
                                              "end": {
                                                "line": 542,
                                                "column": 110
                                              }
                                            },
                                            "id": null,
                                            "generator": false,
                                            "expression": true,
                                            "async": false,
                                            "params": [
                                              {
                                                "type": "Identifier",
                                                "start": 23034,
                                                "end": 23037,
                                                "loc": {
                                                  "start": {
                                                    "line": 542,
                                                    "column": 43
                                                  },
                                                  "end": {
                                                    "line": 542,
                                                    "column": 46
                                                  }
                                                },
                                                "name": "arg"
                                              }
                                            ],
                                            "body": {
                                              "type": "BinaryExpression",
                                              "start": 23041,
                                              "end": 23101,
                                              "loc": {
                                                "start": {
                                                  "line": 542,
                                                  "column": 50
                                                },
                                                "end": {
                                                  "line": 542,
                                                  "column": 110
                                                }
                                              },
                                              "left": {
                                                "type": "CallExpression",
                                                "start": 23041,
                                                "end": 23094,
                                                "loc": {
                                                  "start": {
                                                    "line": 542,
                                                    "column": 50
                                                  },
                                                  "end": {
                                                    "line": 542,
                                                    "column": 103
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 23041,
                                                  "end": 23083,
                                                  "loc": {
                                                    "start": {
                                                      "line": 542,
                                                      "column": 50
                                                    },
                                                    "end": {
                                                      "line": 542,
                                                      "column": 92
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "CallExpression",
                                                    "start": 23041,
                                                    "end": 23075,
                                                    "loc": {
                                                      "start": {
                                                        "line": 542,
                                                        "column": 50
                                                      },
                                                      "end": {
                                                        "line": 542,
                                                        "column": 84
                                                      }
                                                    },
                                                    "callee": {
                                                      "type": "MemberExpression",
                                                      "start": 23041,
                                                      "end": 23070,
                                                      "loc": {
                                                        "start": {
                                                          "line": 542,
                                                          "column": 50
                                                        },
                                                        "end": {
                                                          "line": 542,
                                                          "column": 79
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "Identifier",
                                                        "start": 23041,
                                                        "end": 23047,
                                                        "loc": {
                                                          "start": {
                                                            "line": 542,
                                                            "column": 50
                                                          },
                                                          "end": {
                                                            "line": 542,
                                                            "column": 56
                                                          }
                                                        },
                                                        "name": "Sketch"
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 23048,
                                                        "end": 23070,
                                                        "loc": {
                                                          "start": {
                                                            "line": 542,
                                                            "column": 57
                                                          },
                                                          "end": {
                                                            "line": 542,
                                                            "column": 79
                                                          }
                                                        },
                                                        "name": "ForObjectsWithChildren"
                                                      },
                                                      "computed": false
                                                    },
                                                    "arguments": [
                                                      {
                                                        "type": "Identifier",
                                                        "start": 23071,
                                                        "end": 23074,
                                                        "loc": {
                                                          "start": {
                                                            "line": 542,
                                                            "column": 80
                                                          },
                                                          "end": {
                                                            "line": 542,
                                                            "column": 83
                                                          }
                                                        },
                                                        "name": "arg"
                                                      }
                                                    ]
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 23076,
                                                    "end": 23083,
                                                    "loc": {
                                                      "start": {
                                                        "line": 542,
                                                        "column": 85
                                                      },
                                                      "end": {
                                                        "line": 542,
                                                        "column": 92
                                                      }
                                                    },
                                                    "name": "indexOf"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 23084,
                                                    "end": 23093,
                                                    "loc": {
                                                      "start": {
                                                        "line": 542,
                                                        "column": 93
                                                      },
                                                      "end": {
                                                        "line": 542,
                                                        "column": 102
                                                      }
                                                    },
                                                    "name": "geomPoint"
                                                  }
                                                ]
                                              },
                                              "operator": "!==",
                                              "right": {
                                                "type": "UnaryExpression",
                                                "start": 23099,
                                                "end": 23101,
                                                "loc": {
                                                  "start": {
                                                    "line": 542,
                                                    "column": 108
                                                  },
                                                  "end": {
                                                    "line": 542,
                                                    "column": 110
                                                  }
                                                },
                                                "operator": "-",
                                                "prefix": true,
                                                "argument": {
                                                  "type": "Literal",
                                                  "start": 23100,
                                                  "end": 23101,
                                                  "loc": {
                                                    "start": {
                                                      "line": 542,
                                                      "column": 109
                                                    },
                                                    "end": {
                                                      "line": 542,
                                                      "column": 110
                                                    }
                                                  },
                                                  "value": 1,
                                                  "rawValue": 1,
                                                  "raw": "1"
                                                }
                                              }
                                            }
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 23130,
                                  "end": 23430,
                                  "loc": {
                                    "start": {
                                      "line": 545,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 549,
                                      "column": 13
                                    }
                                  },
                                  "test": {
                                    "type": "LogicalExpression",
                                    "start": 23134,
                                    "end": 23206,
                                    "loc": {
                                      "start": {
                                        "line": 545,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 545,
                                        "column": 88
                                      }
                                    },
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 23134,
                                      "end": 23156,
                                      "loc": {
                                        "start": {
                                          "line": 545,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 545,
                                          "column": 38
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 23134,
                                        "end": 23146,
                                        "loc": {
                                          "start": {
                                            "line": 545,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 545,
                                            "column": 28
                                          }
                                        },
                                        "name": "snappedPoint"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 23147,
                                        "end": 23156,
                                        "loc": {
                                          "start": {
                                            "line": 545,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 545,
                                            "column": 38
                                          }
                                        },
                                        "name": "isSnapped"
                                      },
                                      "computed": false
                                    },
                                    "operator": "&&",
                                    "right": {
                                      "type": "BinaryExpression",
                                      "start": 23160,
                                      "end": 23206,
                                      "loc": {
                                        "start": {
                                          "line": 545,
                                          "column": 42
                                        },
                                        "end": {
                                          "line": 545,
                                          "column": 88
                                        }
                                      },
                                      "left": {
                                        "type": "CallExpression",
                                        "start": 23160,
                                        "end": 23195,
                                        "loc": {
                                          "start": {
                                            "line": 545,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 545,
                                            "column": 77
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 23160,
                                          "end": 23193,
                                          "loc": {
                                            "start": {
                                              "line": 545,
                                              "column": 42
                                            },
                                            "end": {
                                              "line": 545,
                                              "column": 75
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 23160,
                                            "end": 23186,
                                            "loc": {
                                              "start": {
                                                "line": 545,
                                                "column": 42
                                              },
                                              "end": {
                                                "line": 545,
                                                "column": 68
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 23160,
                                              "end": 23172,
                                              "loc": {
                                                "start": {
                                                  "line": 545,
                                                  "column": 42
                                                },
                                                "end": {
                                                  "line": 545,
                                                  "column": 54
                                                }
                                              },
                                              "name": "snappedPoint"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 23173,
                                              "end": 23186,
                                              "loc": {
                                                "start": {
                                                  "line": 545,
                                                  "column": 55
                                                },
                                                "end": {
                                                  "line": 545,
                                                  "column": 68
                                                }
                                              },
                                              "name": "snappingShift"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 23187,
                                            "end": 23193,
                                            "loc": {
                                              "start": {
                                                "line": 545,
                                                "column": 69
                                              },
                                              "end": {
                                                "line": 545,
                                                "column": 75
                                              }
                                            },
                                            "name": "length"
                                          },
                                          "computed": false
                                        },
                                        "arguments": []
                                      },
                                      "operator": "<",
                                      "right": {
                                        "type": "Identifier",
                                        "start": 23198,
                                        "end": 23206,
                                        "loc": {
                                          "start": {
                                            "line": 545,
                                            "column": 80
                                          },
                                          "end": {
                                            "line": 545,
                                            "column": 88
                                          }
                                        },
                                        "name": "distance"
                                      }
                                    }
                                  },
                                  "consequent": {
                                    "type": "BlockStatement",
                                    "start": 23208,
                                    "end": 23430,
                                    "loc": {
                                      "start": {
                                        "line": 545,
                                        "column": 90
                                      },
                                      "end": {
                                        "line": 549,
                                        "column": 13
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 23226,
                                        "end": 23273,
                                        "loc": {
                                          "start": {
                                            "line": 546,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 546,
                                            "column": 63
                                          }
                                        },
                                        "expression": {
                                          "type": "AssignmentExpression",
                                          "start": 23226,
                                          "end": 23272,
                                          "loc": {
                                            "start": {
                                              "line": 546,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 546,
                                              "column": 62
                                            }
                                          },
                                          "operator": "=",
                                          "left": {
                                            "type": "Identifier",
                                            "start": 23226,
                                            "end": 23234,
                                            "loc": {
                                              "start": {
                                                "line": 546,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 546,
                                                "column": 24
                                              }
                                            },
                                            "name": "distance"
                                          },
                                          "right": {
                                            "type": "CallExpression",
                                            "start": 23237,
                                            "end": 23272,
                                            "loc": {
                                              "start": {
                                                "line": 546,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 546,
                                                "column": 62
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 23237,
                                              "end": 23270,
                                              "loc": {
                                                "start": {
                                                  "line": 546,
                                                  "column": 27
                                                },
                                                "end": {
                                                  "line": 546,
                                                  "column": 60
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 23237,
                                                "end": 23263,
                                                "loc": {
                                                  "start": {
                                                    "line": 546,
                                                    "column": 27
                                                  },
                                                  "end": {
                                                    "line": 546,
                                                    "column": 53
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 23237,
                                                  "end": 23249,
                                                  "loc": {
                                                    "start": {
                                                      "line": 546,
                                                      "column": 27
                                                    },
                                                    "end": {
                                                      "line": 546,
                                                      "column": 39
                                                    }
                                                  },
                                                  "name": "snappedPoint"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 23250,
                                                  "end": 23263,
                                                  "loc": {
                                                    "start": {
                                                      "line": 546,
                                                      "column": 40
                                                    },
                                                    "end": {
                                                      "line": 546,
                                                      "column": 53
                                                    }
                                                  },
                                                  "name": "snappingShift"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 23264,
                                                "end": 23270,
                                                "loc": {
                                                  "start": {
                                                    "line": 546,
                                                    "column": 54
                                                  },
                                                  "end": {
                                                    "line": 546,
                                                    "column": 60
                                                  }
                                                },
                                                "name": "length"
                                              },
                                              "computed": false
                                            },
                                            "arguments": []
                                          }
                                        }
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 23290,
                                        "end": 23330,
                                        "loc": {
                                          "start": {
                                            "line": 547,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 547,
                                            "column": 56
                                          }
                                        },
                                        "expression": {
                                          "type": "AssignmentExpression",
                                          "start": 23290,
                                          "end": 23329,
                                          "loc": {
                                            "start": {
                                              "line": 547,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 547,
                                              "column": 55
                                            }
                                          },
                                          "operator": "=",
                                          "left": {
                                            "type": "Identifier",
                                            "start": 23290,
                                            "end": 23298,
                                            "loc": {
                                              "start": {
                                                "line": 547,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 547,
                                                "column": 24
                                              }
                                            },
                                            "name": "toReturn"
                                          },
                                          "right": {
                                            "type": "MemberExpression",
                                            "start": 23301,
                                            "end": 23329,
                                            "loc": {
                                              "start": {
                                                "line": 547,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 547,
                                                "column": 55
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 23301,
                                              "end": 23313,
                                              "loc": {
                                                "start": {
                                                  "line": 547,
                                                  "column": 27
                                                },
                                                "end": {
                                                  "line": 547,
                                                  "column": 39
                                                }
                                              },
                                              "name": "snappedPoint"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 23314,
                                              "end": 23329,
                                              "loc": {
                                                "start": {
                                                  "line": 547,
                                                  "column": 40
                                                },
                                                "end": {
                                                  "line": 547,
                                                  "column": 55
                                                }
                                              },
                                              "name": "snappedPosition"
                                            },
                                            "computed": false
                                          }
                                        }
                                      },
                                      {
                                        "type": "IfStatement",
                                        "start": 23347,
                                        "end": 23416,
                                        "loc": {
                                          "start": {
                                            "line": 548,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 548,
                                            "column": 85
                                          }
                                        },
                                        "test": {
                                          "type": "UnaryExpression",
                                          "start": 23351,
                                          "end": 23375,
                                          "loc": {
                                            "start": {
                                              "line": 548,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 548,
                                              "column": 44
                                            }
                                          },
                                          "operator": "!",
                                          "prefix": true,
                                          "argument": {
                                            "type": "BinaryExpression",
                                            "start": 23353,
                                            "end": 23374,
                                            "loc": {
                                              "start": {
                                                "line": 548,
                                                "column": 22
                                              },
                                              "end": {
                                                "line": 548,
                                                "column": 43
                                              }
                                            },
                                            "left": {
                                              "type": "Identifier",
                                              "start": 23353,
                                              "end": 23356,
                                              "loc": {
                                                "start": {
                                                  "line": 548,
                                                  "column": 22
                                                },
                                                "end": {
                                                  "line": 548,
                                                  "column": 25
                                                }
                                              },
                                              "name": "obj"
                                            },
                                            "operator": "instanceof",
                                            "right": {
                                              "type": "Identifier",
                                              "start": 23369,
                                              "end": 23374,
                                              "loc": {
                                                "start": {
                                                  "line": 548,
                                                  "column": 38
                                                },
                                                "end": {
                                                  "line": 548,
                                                  "column": 43
                                                }
                                              },
                                              "name": "Point"
                                            },
                                            "parenthesizedExpression": true
                                          }
                                        },
                                        "consequent": {
                                          "type": "ExpressionStatement",
                                          "start": 23377,
                                          "end": 23416,
                                          "loc": {
                                            "start": {
                                              "line": 548,
                                              "column": 46
                                            },
                                            "end": {
                                              "line": 548,
                                              "column": 85
                                            }
                                          },
                                          "expression": {
                                            "type": "CallExpression",
                                            "start": 23377,
                                            "end": 23415,
                                            "loc": {
                                              "start": {
                                                "line": 548,
                                                "column": 46
                                              },
                                              "end": {
                                                "line": 548,
                                                "column": 84
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 23377,
                                              "end": 23389,
                                              "loc": {
                                                "start": {
                                                  "line": 548,
                                                  "column": 46
                                                },
                                                "end": {
                                                  "line": 548,
                                                  "column": 58
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 23377,
                                                "end": 23385,
                                                "loc": {
                                                  "start": {
                                                    "line": 548,
                                                    "column": 46
                                                  },
                                                  "end": {
                                                    "line": 548,
                                                    "column": 54
                                                  }
                                                },
                                                "name": "toReturn"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 23386,
                                                "end": 23389,
                                                "loc": {
                                                  "start": {
                                                    "line": 548,
                                                    "column": 55
                                                  },
                                                  "end": {
                                                    "line": 548,
                                                    "column": 58
                                                  }
                                                },
                                                "name": "sub"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 23390,
                                                "end": 23414,
                                                "loc": {
                                                  "start": {
                                                    "line": 548,
                                                    "column": 59
                                                  },
                                                  "end": {
                                                    "line": 548,
                                                    "column": 83
                                                  }
                                                },
                                                "name": "fromMousePositionToPoint"
                                              }
                                            ]
                                          }
                                        },
                                        "alternate": null
                                      }
                                    ]
                                  },
                                  "alternate": null
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 23452,
                      "end": 23468,
                      "loc": {
                        "start": {
                          "line": 552,
                          "column": 8
                        },
                        "end": {
                          "line": 552,
                          "column": 24
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 23459,
                        "end": 23467,
                        "loc": {
                          "start": {
                            "line": 552,
                            "column": 15
                          },
                          "end": {
                            "line": 552,
                            "column": 23
                          }
                        },
                        "name": "toReturn"
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 23480,
              "end": 23550,
              "loc": {
                "start": {
                  "line": 555,
                  "column": 4
                },
                "end": {
                  "line": 557,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 23480,
                "end": 23494,
                "loc": {
                  "start": {
                    "line": 555,
                    "column": 4
                  },
                  "end": {
                    "line": 555,
                    "column": 18
                  }
                },
                "name": "showDimensions"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 23494,
                "end": 23550,
                "loc": {
                  "start": {
                    "line": 555,
                    "column": 18
                  },
                  "end": {
                    "line": 557,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 23497,
                  "end": 23550,
                  "loc": {
                    "start": {
                      "line": 555,
                      "column": 21
                    },
                    "end": {
                      "line": 557,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 23507,
                      "end": 23544,
                      "loc": {
                        "start": {
                          "line": 556,
                          "column": 8
                        },
                        "end": {
                          "line": 556,
                          "column": 45
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 23507,
                        "end": 23543,
                        "loc": {
                          "start": {
                            "line": 556,
                            "column": 8
                          },
                          "end": {
                            "line": 556,
                            "column": 44
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 23507,
                          "end": 23524,
                          "loc": {
                            "start": {
                              "line": 556,
                              "column": 8
                            },
                            "end": {
                              "line": 556,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 23507,
                            "end": 23511,
                            "loc": {
                              "start": {
                                "line": 556,
                                "column": 8
                              },
                              "end": {
                                "line": 556,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 23512,
                            "end": 23524,
                            "loc": {
                              "start": {
                                "line": 556,
                                "column": 13
                              },
                              "end": {
                                "line": 556,
                                "column": 25
                              }
                            },
                            "name": "addAuxObject"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 23525,
                            "end": 23542,
                            "loc": {
                              "start": {
                                "line": 556,
                                "column": 26
                              },
                              "end": {
                                "line": 556,
                                "column": 43
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 23525,
                              "end": 23529,
                              "loc": {
                                "start": {
                                  "line": 556,
                                  "column": 26
                                },
                                "end": {
                                  "line": 556,
                                  "column": 30
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 23530,
                              "end": 23542,
                              "loc": {
                                "start": {
                                  "line": 556,
                                  "column": 31
                                },
                                "end": {
                                  "line": 556,
                                  "column": 43
                                }
                              },
                              "name": "__dimensions"
                            },
                            "computed": false
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 23556,
              "end": 23629,
              "loc": {
                "start": {
                  "line": 559,
                  "column": 4
                },
                "end": {
                  "line": 561,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 23556,
                "end": 23570,
                "loc": {
                  "start": {
                    "line": 559,
                    "column": 4
                  },
                  "end": {
                    "line": 559,
                    "column": 18
                  }
                },
                "name": "hideDimensions"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 23570,
                "end": 23629,
                "loc": {
                  "start": {
                    "line": 559,
                    "column": 18
                  },
                  "end": {
                    "line": 561,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 23573,
                  "end": 23629,
                  "loc": {
                    "start": {
                      "line": 559,
                      "column": 21
                    },
                    "end": {
                      "line": 561,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 23583,
                      "end": 23623,
                      "loc": {
                        "start": {
                          "line": 560,
                          "column": 8
                        },
                        "end": {
                          "line": 560,
                          "column": 48
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 23583,
                        "end": 23622,
                        "loc": {
                          "start": {
                            "line": 560,
                            "column": 8
                          },
                          "end": {
                            "line": 560,
                            "column": 47
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 23583,
                          "end": 23603,
                          "loc": {
                            "start": {
                              "line": 560,
                              "column": 8
                            },
                            "end": {
                              "line": 560,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 23583,
                            "end": 23587,
                            "loc": {
                              "start": {
                                "line": 560,
                                "column": 8
                              },
                              "end": {
                                "line": 560,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 23588,
                            "end": 23603,
                            "loc": {
                              "start": {
                                "line": 560,
                                "column": 13
                              },
                              "end": {
                                "line": 560,
                                "column": 28
                              }
                            },
                            "name": "removeAuxObject"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 23604,
                            "end": 23621,
                            "loc": {
                              "start": {
                                "line": 560,
                                "column": 29
                              },
                              "end": {
                                "line": 560,
                                "column": 46
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 23604,
                              "end": 23608,
                              "loc": {
                                "start": {
                                  "line": 560,
                                  "column": 29
                                },
                                "end": {
                                  "line": 560,
                                  "column": 33
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 23609,
                              "end": 23621,
                              "loc": {
                                "start": {
                                  "line": 560,
                                  "column": 34
                                },
                                "end": {
                                  "line": 560,
                                  "column": 46
                                }
                              },
                              "name": "__dimensions"
                            },
                            "computed": false
                          }
                        ]
                      }
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " intercept graphical objects created on the server",
                  "start": 23635,
                  "end": 23687,
                  "loc": {
                    "start": {
                      "line": 563,
                      "column": 4
                    },
                    "end": {
                      "line": 563,
                      "column": 56
                    }
                  },
                  "range": [
                    23635,
                    23687
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 23692,
              "end": 26843,
              "loc": {
                "start": {
                  "line": 564,
                  "column": 4
                },
                "end": {
                  "line": 634,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 23692,
                "end": 23715,
                "loc": {
                  "start": {
                    "line": 564,
                    "column": 4
                  },
                  "end": {
                    "line": 564,
                    "column": 27
                  }
                },
                "name": "updateDimensionsFactory",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 23715,
                "end": 26843,
                "loc": {
                  "start": {
                    "line": 564,
                    "column": 27
                  },
                  "end": {
                    "line": 634,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 23716,
                    "end": 23721,
                    "loc": {
                      "start": {
                        "line": 564,
                        "column": 28
                      },
                      "end": {
                        "line": 564,
                        "column": 33
                      }
                    },
                    "name": "input"
                  },
                  {
                    "type": "Identifier",
                    "start": 23723,
                    "end": 23729,
                    "loc": {
                      "start": {
                        "line": 564,
                        "column": 35
                      },
                      "end": {
                        "line": 564,
                        "column": 41
                      }
                    },
                    "name": "result"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 23731,
                  "end": 26843,
                  "loc": {
                    "start": {
                      "line": 564,
                      "column": 43
                    },
                    "end": {
                      "line": 634,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 23741,
                      "end": 23763,
                      "loc": {
                        "start": {
                          "line": 565,
                          "column": 8
                        },
                        "end": {
                          "line": 565,
                          "column": 30
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 23745,
                          "end": 23762,
                          "loc": {
                            "start": {
                              "line": 565,
                              "column": 12
                            },
                            "end": {
                              "line": 565,
                              "column": 29
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 23745,
                            "end": 23749,
                            "loc": {
                              "start": {
                                "line": 565,
                                "column": 12
                              },
                              "end": {
                                "line": 565,
                                "column": 16
                              }
                            },
                            "name": "data"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 23752,
                            "end": 23762,
                            "loc": {
                              "start": {
                                "line": 565,
                                "column": 19
                              },
                              "end": {
                                "line": 565,
                                "column": 29
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 23752,
                              "end": 23757,
                              "loc": {
                                "start": {
                                  "line": 565,
                                  "column": 19
                                },
                                "end": {
                                  "line": 565,
                                  "column": 24
                                }
                              },
                              "name": "input"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 23758,
                              "end": 23762,
                              "loc": {
                                "start": {
                                  "line": 565,
                                  "column": 25
                                },
                                "end": {
                                  "line": 565,
                                  "column": 29
                                }
                              },
                              "name": "data"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 23772,
                      "end": 23837,
                      "loc": {
                        "start": {
                          "line": 566,
                          "column": 8
                        },
                        "end": {
                          "line": 566,
                          "column": 73
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 23776,
                          "end": 23836,
                          "loc": {
                            "start": {
                              "line": 566,
                              "column": 12
                            },
                            "end": {
                              "line": 566,
                              "column": 72
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 23776,
                            "end": 23788,
                            "loc": {
                              "start": {
                                "line": 566,
                                "column": 12
                              },
                              "end": {
                                "line": 566,
                                "column": 24
                              }
                            },
                            "name": "worldToLocal"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 23791,
                            "end": 23836,
                            "loc": {
                              "start": {
                                "line": 566,
                                "column": 27
                              },
                              "end": {
                                "line": 566,
                                "column": 72
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 23791,
                              "end": 23823,
                              "loc": {
                                "start": {
                                  "line": 566,
                                  "column": 27
                                },
                                "end": {
                                  "line": 566,
                                  "column": 59
                                }
                              },
                              "object": {
                                "type": "NewExpression",
                                "start": 23792,
                                "end": 23811,
                                "loc": {
                                  "start": {
                                    "line": 566,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 566,
                                    "column": 47
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 23796,
                                  "end": 23809,
                                  "loc": {
                                    "start": {
                                      "line": 566,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 566,
                                      "column": 45
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 23796,
                                    "end": 23801,
                                    "loc": {
                                      "start": {
                                        "line": 566,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 566,
                                        "column": 37
                                      }
                                    },
                                    "name": "THREE"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 23802,
                                    "end": 23809,
                                    "loc": {
                                      "start": {
                                        "line": 566,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 566,
                                        "column": 45
                                      }
                                    },
                                    "name": "Matrix4"
                                  },
                                  "computed": false
                                },
                                "arguments": [],
                                "parenthesizedExpression": true
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 23813,
                                "end": 23823,
                                "loc": {
                                  "start": {
                                    "line": 566,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 566,
                                    "column": 59
                                  }
                                },
                                "name": "getInverse"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 23824,
                                "end": 23835,
                                "loc": {
                                  "start": {
                                    "line": 566,
                                    "column": 60
                                  },
                                  "end": {
                                    "line": 566,
                                    "column": 71
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 23824,
                                  "end": 23828,
                                  "loc": {
                                    "start": {
                                      "line": 566,
                                      "column": 60
                                    },
                                    "end": {
                                      "line": 566,
                                      "column": 64
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 23829,
                                  "end": 23835,
                                  "loc": {
                                    "start": {
                                      "line": 566,
                                      "column": 65
                                    },
                                    "end": {
                                      "line": 566,
                                      "column": 71
                                    }
                                  },
                                  "name": "matrix"
                                },
                                "computed": false
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "SwitchStatement",
                      "start": 23847,
                      "end": 26837,
                      "loc": {
                        "start": {
                          "line": 568,
                          "column": 8
                        },
                        "end": {
                          "line": 633,
                          "column": 9
                        }
                      },
                      "discriminant": {
                        "type": "MemberExpression",
                        "start": 23855,
                        "end": 23865,
                        "loc": {
                          "start": {
                            "line": 568,
                            "column": 16
                          },
                          "end": {
                            "line": 568,
                            "column": 26
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 23855,
                          "end": 23860,
                          "loc": {
                            "start": {
                              "line": 568,
                              "column": 16
                            },
                            "end": {
                              "line": 568,
                              "column": 21
                            }
                          },
                          "name": "input"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 23861,
                          "end": 23865,
                          "loc": {
                            "start": {
                              "line": 568,
                              "column": 22
                            },
                            "end": {
                              "line": 568,
                              "column": 26
                            }
                          },
                          "name": "type"
                        },
                        "computed": false
                      },
                      "cases": [
                        {
                          "type": "SwitchCase",
                          "start": 23881,
                          "end": 25130,
                          "loc": {
                            "start": {
                              "line": 569,
                              "column": 12
                            },
                            "end": {
                              "line": 595,
                              "column": 22
                            }
                          },
                          "consequent": [
                            {
                              "type": "VariableDeclaration",
                              "start": 23960,
                              "end": 24044,
                              "loc": {
                                "start": {
                                  "line": 571,
                                  "column": 16
                                },
                                "end": {
                                  "line": 571,
                                  "column": 100
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 23964,
                                  "end": 24043,
                                  "loc": {
                                    "start": {
                                      "line": 571,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 571,
                                      "column": 99
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 23964,
                                    "end": 23967,
                                    "loc": {
                                      "start": {
                                        "line": 571,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 571,
                                        "column": 23
                                      }
                                    },
                                    "name": "pos",
                                    "leadingComments": null
                                  },
                                  "init": {
                                    "type": "CallExpression",
                                    "start": 23970,
                                    "end": 24043,
                                    "loc": {
                                      "start": {
                                        "line": 571,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 571,
                                        "column": 99
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 23970,
                                      "end": 24029,
                                      "loc": {
                                        "start": {
                                          "line": 571,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 571,
                                          "column": 85
                                        }
                                      },
                                      "object": {
                                        "type": "CallExpression",
                                        "start": 23970,
                                        "end": 24016,
                                        "loc": {
                                          "start": {
                                            "line": 571,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 571,
                                            "column": 72
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 23970,
                                          "end": 24001,
                                          "loc": {
                                            "start": {
                                              "line": 571,
                                              "column": 26
                                            },
                                            "end": {
                                              "line": 571,
                                              "column": 57
                                            }
                                          },
                                          "object": {
                                            "type": "NewExpression",
                                            "start": 23971,
                                            "end": 23990,
                                            "loc": {
                                              "start": {
                                                "line": 571,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 571,
                                                "column": 46
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 23975,
                                              "end": 23988,
                                              "loc": {
                                                "start": {
                                                  "line": 571,
                                                  "column": 31
                                                },
                                                "end": {
                                                  "line": 571,
                                                  "column": 44
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 23975,
                                                "end": 23980,
                                                "loc": {
                                                  "start": {
                                                    "line": 571,
                                                    "column": 31
                                                  },
                                                  "end": {
                                                    "line": 571,
                                                    "column": 36
                                                  }
                                                },
                                                "name": "THREE"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 23981,
                                                "end": 23988,
                                                "loc": {
                                                  "start": {
                                                    "line": 571,
                                                    "column": 37
                                                  },
                                                  "end": {
                                                    "line": 571,
                                                    "column": 44
                                                  }
                                                },
                                                "name": "Vector3"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [],
                                            "parenthesizedExpression": true
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 23992,
                                            "end": 24001,
                                            "loc": {
                                              "start": {
                                                "line": 571,
                                                "column": 48
                                              },
                                              "end": {
                                                "line": 571,
                                                "column": 57
                                              }
                                            },
                                            "name": "fromArray"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "MemberExpression",
                                            "start": 24002,
                                            "end": 24015,
                                            "loc": {
                                              "start": {
                                                "line": 571,
                                                "column": 58
                                              },
                                              "end": {
                                                "line": 571,
                                                "column": 71
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 24002,
                                              "end": 24006,
                                              "loc": {
                                                "start": {
                                                  "line": 571,
                                                  "column": 58
                                                },
                                                "end": {
                                                  "line": 571,
                                                  "column": 62
                                                }
                                              },
                                              "name": "data"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 24007,
                                              "end": 24015,
                                              "loc": {
                                                "start": {
                                                  "line": 571,
                                                  "column": 63
                                                },
                                                "end": {
                                                  "line": 571,
                                                  "column": 71
                                                }
                                              },
                                              "name": "position"
                                            },
                                            "computed": false
                                          }
                                        ]
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 24017,
                                        "end": 24029,
                                        "loc": {
                                          "start": {
                                            "line": 571,
                                            "column": 73
                                          },
                                          "end": {
                                            "line": 571,
                                            "column": 85
                                          }
                                        },
                                        "name": "applyMatrix4"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 24030,
                                        "end": 24042,
                                        "loc": {
                                          "start": {
                                            "line": 571,
                                            "column": 86
                                          },
                                          "end": {
                                            "line": 571,
                                            "column": 98
                                          }
                                        },
                                        "name": "worldToLocal"
                                      }
                                    ]
                                  },
                                  "leadingComments": null
                                }
                              ],
                              "kind": "var",
                              "leadingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "transform to sketch coordinates",
                                  "start": 23910,
                                  "end": 23943,
                                  "loc": {
                                    "start": {
                                      "line": 570,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 570,
                                      "column": 49
                                    }
                                  },
                                  "range": [
                                    23910,
                                    23943
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "VariableDeclaration",
                              "start": 24061,
                              "end": 24147,
                              "loc": {
                                "start": {
                                  "line": 572,
                                  "column": 16
                                },
                                "end": {
                                  "line": 572,
                                  "column": 102
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 24065,
                                  "end": 24146,
                                  "loc": {
                                    "start": {
                                      "line": 572,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 572,
                                      "column": 101
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 24065,
                                    "end": 24068,
                                    "loc": {
                                      "start": {
                                        "line": 572,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 572,
                                        "column": 23
                                      }
                                    },
                                    "name": "dir"
                                  },
                                  "init": {
                                    "type": "CallExpression",
                                    "start": 24071,
                                    "end": 24146,
                                    "loc": {
                                      "start": {
                                        "line": 572,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 572,
                                        "column": 101
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 24071,
                                      "end": 24132,
                                      "loc": {
                                        "start": {
                                          "line": 572,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 572,
                                          "column": 87
                                        }
                                      },
                                      "object": {
                                        "type": "CallExpression",
                                        "start": 24071,
                                        "end": 24113,
                                        "loc": {
                                          "start": {
                                            "line": 572,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 572,
                                            "column": 68
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 24071,
                                          "end": 24102,
                                          "loc": {
                                            "start": {
                                              "line": 572,
                                              "column": 26
                                            },
                                            "end": {
                                              "line": 572,
                                              "column": 57
                                            }
                                          },
                                          "object": {
                                            "type": "NewExpression",
                                            "start": 24072,
                                            "end": 24091,
                                            "loc": {
                                              "start": {
                                                "line": 572,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 572,
                                                "column": 46
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 24076,
                                              "end": 24089,
                                              "loc": {
                                                "start": {
                                                  "line": 572,
                                                  "column": 31
                                                },
                                                "end": {
                                                  "line": 572,
                                                  "column": 44
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 24076,
                                                "end": 24081,
                                                "loc": {
                                                  "start": {
                                                    "line": 572,
                                                    "column": 31
                                                  },
                                                  "end": {
                                                    "line": 572,
                                                    "column": 36
                                                  }
                                                },
                                                "name": "THREE"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 24082,
                                                "end": 24089,
                                                "loc": {
                                                  "start": {
                                                    "line": 572,
                                                    "column": 37
                                                  },
                                                  "end": {
                                                    "line": 572,
                                                    "column": 44
                                                  }
                                                },
                                                "name": "Vector3"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [],
                                            "parenthesizedExpression": true
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 24093,
                                            "end": 24102,
                                            "loc": {
                                              "start": {
                                                "line": 572,
                                                "column": 48
                                              },
                                              "end": {
                                                "line": 572,
                                                "column": 57
                                              }
                                            },
                                            "name": "fromArray"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "MemberExpression",
                                            "start": 24103,
                                            "end": 24112,
                                            "loc": {
                                              "start": {
                                                "line": 572,
                                                "column": 58
                                              },
                                              "end": {
                                                "line": 572,
                                                "column": 67
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 24103,
                                              "end": 24107,
                                              "loc": {
                                                "start": {
                                                  "line": 572,
                                                  "column": 58
                                                },
                                                "end": {
                                                  "line": 572,
                                                  "column": 62
                                                }
                                              },
                                              "name": "data"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 24108,
                                              "end": 24112,
                                              "loc": {
                                                "start": {
                                                  "line": 572,
                                                  "column": 63
                                                },
                                                "end": {
                                                  "line": 572,
                                                  "column": 67
                                                }
                                              },
                                              "name": "axis"
                                            },
                                            "computed": false
                                          }
                                        ]
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 24114,
                                        "end": 24132,
                                        "loc": {
                                          "start": {
                                            "line": 572,
                                            "column": 69
                                          },
                                          "end": {
                                            "line": 572,
                                            "column": 87
                                          }
                                        },
                                        "name": "transformDirection"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 24133,
                                        "end": 24145,
                                        "loc": {
                                          "start": {
                                            "line": 572,
                                            "column": 88
                                          },
                                          "end": {
                                            "line": 572,
                                            "column": 100
                                          }
                                        },
                                        "name": "worldToLocal"
                                      }
                                    ]
                                  }
                                }
                              ],
                              "kind": "var"
                            },
                            {
                              "type": "VariableDeclaration",
                              "start": 24164,
                              "end": 24190,
                              "loc": {
                                "start": {
                                  "line": 573,
                                  "column": 16
                                },
                                "end": {
                                  "line": 573,
                                  "column": 42
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 24168,
                                  "end": 24189,
                                  "loc": {
                                    "start": {
                                      "line": 573,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 573,
                                      "column": 41
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 24168,
                                    "end": 24174,
                                    "loc": {
                                      "start": {
                                        "line": 573,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 573,
                                        "column": 26
                                      }
                                    },
                                    "name": "height"
                                  },
                                  "init": {
                                    "type": "CallExpression",
                                    "start": 24177,
                                    "end": 24189,
                                    "loc": {
                                      "start": {
                                        "line": 573,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 573,
                                        "column": 41
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 24177,
                                      "end": 24187,
                                      "loc": {
                                        "start": {
                                          "line": 573,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 573,
                                          "column": 39
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 24177,
                                        "end": 24180,
                                        "loc": {
                                          "start": {
                                            "line": 573,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 573,
                                            "column": 32
                                          }
                                        },
                                        "name": "dir"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 24181,
                                        "end": 24187,
                                        "loc": {
                                          "start": {
                                            "line": 573,
                                            "column": 33
                                          },
                                          "end": {
                                            "line": 573,
                                            "column": 39
                                          }
                                        },
                                        "name": "length"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                }
                              ],
                              "kind": "var"
                            },
                            {
                              "type": "VariableDeclaration",
                              "start": 24207,
                              "end": 24265,
                              "loc": {
                                "start": {
                                  "line": 574,
                                  "column": 16
                                },
                                "end": {
                                  "line": 574,
                                  "column": 74
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 24211,
                                  "end": 24264,
                                  "loc": {
                                    "start": {
                                      "line": 574,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 574,
                                      "column": 73
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 24211,
                                    "end": 24215,
                                    "loc": {
                                      "start": {
                                        "line": 574,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 574,
                                        "column": 24
                                      }
                                    },
                                    "name": "diam"
                                  },
                                  "init": {
                                    "type": "CallExpression",
                                    "start": 24218,
                                    "end": 24264,
                                    "loc": {
                                      "start": {
                                        "line": 574,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 574,
                                        "column": 73
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 24218,
                                      "end": 24226,
                                      "loc": {
                                        "start": {
                                          "line": 574,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 574,
                                          "column": 35
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 24218,
                                        "end": 24222,
                                        "loc": {
                                          "start": {
                                            "line": 574,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 574,
                                            "column": 31
                                          }
                                        },
                                        "name": "Math"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 24223,
                                        "end": 24226,
                                        "loc": {
                                          "start": {
                                            "line": 574,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 574,
                                            "column": 35
                                          }
                                        },
                                        "name": "max"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "MemberExpression",
                                        "start": 24227,
                                        "end": 24244,
                                        "loc": {
                                          "start": {
                                            "line": 574,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 574,
                                            "column": 53
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 24227,
                                          "end": 24241,
                                          "loc": {
                                            "start": {
                                              "line": 574,
                                              "column": 36
                                            },
                                            "end": {
                                              "line": 574,
                                              "column": 50
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 24227,
                                            "end": 24231,
                                            "loc": {
                                              "start": {
                                                "line": 574,
                                                "column": 36
                                              },
                                              "end": {
                                                "line": 574,
                                                "column": 40
                                              }
                                            },
                                            "name": "data"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 24232,
                                            "end": 24241,
                                            "loc": {
                                              "start": {
                                                "line": 574,
                                                "column": 41
                                              },
                                              "end": {
                                                "line": 574,
                                                "column": 50
                                              }
                                            },
                                            "name": "diameters"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Literal",
                                          "start": 24242,
                                          "end": 24243,
                                          "loc": {
                                            "start": {
                                              "line": 574,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 574,
                                              "column": 52
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        "computed": true
                                      },
                                      {
                                        "type": "MemberExpression",
                                        "start": 24246,
                                        "end": 24263,
                                        "loc": {
                                          "start": {
                                            "line": 574,
                                            "column": 55
                                          },
                                          "end": {
                                            "line": 574,
                                            "column": 72
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 24246,
                                          "end": 24260,
                                          "loc": {
                                            "start": {
                                              "line": 574,
                                              "column": 55
                                            },
                                            "end": {
                                              "line": 574,
                                              "column": 69
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 24246,
                                            "end": 24250,
                                            "loc": {
                                              "start": {
                                                "line": 574,
                                                "column": 55
                                              },
                                              "end": {
                                                "line": 574,
                                                "column": 59
                                              }
                                            },
                                            "name": "data"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 24251,
                                            "end": 24260,
                                            "loc": {
                                              "start": {
                                                "line": 574,
                                                "column": 60
                                              },
                                              "end": {
                                                "line": 574,
                                                "column": 69
                                              }
                                            },
                                            "name": "diameters"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Literal",
                                          "start": 24261,
                                          "end": 24262,
                                          "loc": {
                                            "start": {
                                              "line": 574,
                                              "column": 70
                                            },
                                            "end": {
                                              "line": 574,
                                              "column": 71
                                            }
                                          },
                                          "value": 1,
                                          "rawValue": 1,
                                          "raw": "1"
                                        },
                                        "computed": true
                                      }
                                    ]
                                  }
                                }
                              ],
                              "kind": "var",
                              "trailingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "create two-sided arrow",
                                  "start": 24283,
                                  "end": 24307,
                                  "loc": {
                                    "start": {
                                      "line": 576,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 576,
                                      "column": 40
                                    }
                                  },
                                  "range": [
                                    24283,
                                    24307
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "VariableDeclaration",
                              "start": 24324,
                              "end": 24356,
                              "loc": {
                                "start": {
                                  "line": 577,
                                  "column": 16
                                },
                                "end": {
                                  "line": 577,
                                  "column": 48
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 24328,
                                  "end": 24355,
                                  "loc": {
                                    "start": {
                                      "line": 577,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 577,
                                      "column": 47
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 24328,
                                    "end": 24332,
                                    "loc": {
                                      "start": {
                                        "line": 577,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 577,
                                        "column": 24
                                      }
                                    },
                                    "name": "geom",
                                    "leadingComments": null
                                  },
                                  "init": {
                                    "type": "NewExpression",
                                    "start": 24335,
                                    "end": 24355,
                                    "loc": {
                                      "start": {
                                        "line": 577,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 577,
                                        "column": 47
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 24339,
                                      "end": 24353,
                                      "loc": {
                                        "start": {
                                          "line": 577,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 577,
                                          "column": 45
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 24339,
                                        "end": 24344,
                                        "loc": {
                                          "start": {
                                            "line": 577,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 577,
                                            "column": 36
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 24345,
                                        "end": 24353,
                                        "loc": {
                                          "start": {
                                            "line": 577,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 577,
                                            "column": 45
                                          }
                                        },
                                        "name": "Geometry"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  },
                                  "leadingComments": null
                                }
                              ],
                              "kind": "var",
                              "leadingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "create two-sided arrow",
                                  "start": 24283,
                                  "end": 24307,
                                  "loc": {
                                    "start": {
                                      "line": 576,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 576,
                                      "column": 40
                                    }
                                  },
                                  "range": [
                                    24283,
                                    24307
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 24373,
                              "end": 24605,
                              "loc": {
                                "start": {
                                  "line": 578,
                                  "column": 16
                                },
                                "end": {
                                  "line": 582,
                                  "column": 18
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 24373,
                                "end": 24604,
                                "loc": {
                                  "start": {
                                    "line": 578,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 582,
                                    "column": 17
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 24373,
                                  "end": 24391,
                                  "loc": {
                                    "start": {
                                      "line": 578,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 578,
                                      "column": 34
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 24373,
                                    "end": 24386,
                                    "loc": {
                                      "start": {
                                        "line": 578,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 578,
                                        "column": 29
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 24373,
                                      "end": 24377,
                                      "loc": {
                                        "start": {
                                          "line": 578,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 578,
                                          "column": 20
                                        }
                                      },
                                      "name": "geom"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 24378,
                                      "end": 24386,
                                      "loc": {
                                        "start": {
                                          "line": 578,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 578,
                                          "column": 29
                                        }
                                      },
                                      "name": "vertices"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 24387,
                                    "end": 24391,
                                    "loc": {
                                      "start": {
                                        "line": 578,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 578,
                                        "column": 34
                                      }
                                    },
                                    "name": "push"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "NewExpression",
                                    "start": 24419,
                                    "end": 24456,
                                    "loc": {
                                      "start": {
                                        "line": 579,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 579,
                                        "column": 63
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 24423,
                                      "end": 24436,
                                      "loc": {
                                        "start": {
                                          "line": 579,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 579,
                                          "column": 43
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 24423,
                                        "end": 24428,
                                        "loc": {
                                          "start": {
                                            "line": 579,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 579,
                                            "column": 35
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 24429,
                                        "end": 24436,
                                        "loc": {
                                          "start": {
                                            "line": 579,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 579,
                                            "column": 43
                                          }
                                        },
                                        "name": "Vector3"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 24437,
                                        "end": 24443,
                                        "loc": {
                                          "start": {
                                            "line": 579,
                                            "column": 44
                                          },
                                          "end": {
                                            "line": 579,
                                            "column": 50
                                          }
                                        },
                                        "name": "height"
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 24445,
                                        "end": 24452,
                                        "loc": {
                                          "start": {
                                            "line": 579,
                                            "column": 52
                                          },
                                          "end": {
                                            "line": 579,
                                            "column": 59
                                          }
                                        },
                                        "left": {
                                          "type": "UnaryExpression",
                                          "start": 24445,
                                          "end": 24450,
                                          "loc": {
                                            "start": {
                                              "line": 579,
                                              "column": 52
                                            },
                                            "end": {
                                              "line": 579,
                                              "column": 57
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Identifier",
                                            "start": 24446,
                                            "end": 24450,
                                            "loc": {
                                              "start": {
                                                "line": 579,
                                                "column": 53
                                              },
                                              "end": {
                                                "line": 579,
                                                "column": 57
                                              }
                                            },
                                            "name": "diam"
                                          }
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Literal",
                                          "start": 24451,
                                          "end": 24452,
                                          "loc": {
                                            "start": {
                                              "line": 579,
                                              "column": 58
                                            },
                                            "end": {
                                              "line": 579,
                                              "column": 59
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 24454,
                                        "end": 24455,
                                        "loc": {
                                          "start": {
                                            "line": 579,
                                            "column": 61
                                          },
                                          "end": {
                                            "line": 579,
                                            "column": 62
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "NewExpression",
                                    "start": 24484,
                                    "end": 24521,
                                    "loc": {
                                      "start": {
                                        "line": 580,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 580,
                                        "column": 63
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 24488,
                                      "end": 24501,
                                      "loc": {
                                        "start": {
                                          "line": 580,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 580,
                                          "column": 43
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 24488,
                                        "end": 24493,
                                        "loc": {
                                          "start": {
                                            "line": 580,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 580,
                                            "column": 35
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 24494,
                                        "end": 24501,
                                        "loc": {
                                          "start": {
                                            "line": 580,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 580,
                                            "column": 43
                                          }
                                        },
                                        "name": "Vector3"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 24502,
                                        "end": 24508,
                                        "loc": {
                                          "start": {
                                            "line": 580,
                                            "column": 44
                                          },
                                          "end": {
                                            "line": 580,
                                            "column": 50
                                          }
                                        },
                                        "name": "height"
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 24511,
                                        "end": 24517,
                                        "loc": {
                                          "start": {
                                            "line": 580,
                                            "column": 53
                                          },
                                          "end": {
                                            "line": 580,
                                            "column": 59
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 24511,
                                          "end": 24515,
                                          "loc": {
                                            "start": {
                                              "line": 580,
                                              "column": 53
                                            },
                                            "end": {
                                              "line": 580,
                                              "column": 57
                                            }
                                          },
                                          "name": "diam"
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Literal",
                                          "start": 24516,
                                          "end": 24517,
                                          "loc": {
                                            "start": {
                                              "line": 580,
                                              "column": 58
                                            },
                                            "end": {
                                              "line": 580,
                                              "column": 59
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 24519,
                                        "end": 24520,
                                        "loc": {
                                          "start": {
                                            "line": 580,
                                            "column": 61
                                          },
                                          "end": {
                                            "line": 580,
                                            "column": 62
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "NewExpression",
                                    "start": 24549,
                                    "end": 24586,
                                    "loc": {
                                      "start": {
                                        "line": 581,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 581,
                                        "column": 63
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 24553,
                                      "end": 24566,
                                      "loc": {
                                        "start": {
                                          "line": 581,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 581,
                                          "column": 43
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 24553,
                                        "end": 24558,
                                        "loc": {
                                          "start": {
                                            "line": 581,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 581,
                                            "column": 35
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 24559,
                                        "end": 24566,
                                        "loc": {
                                          "start": {
                                            "line": 581,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 581,
                                            "column": 43
                                          }
                                        },
                                        "name": "Vector3"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Literal",
                                        "start": 24572,
                                        "end": 24573,
                                        "loc": {
                                          "start": {
                                            "line": 581,
                                            "column": 49
                                          },
                                          "end": {
                                            "line": 581,
                                            "column": 50
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 24581,
                                        "end": 24582,
                                        "loc": {
                                          "start": {
                                            "line": 581,
                                            "column": 58
                                          },
                                          "end": {
                                            "line": 581,
                                            "column": 59
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 24584,
                                        "end": 24585,
                                        "loc": {
                                          "start": {
                                            "line": 581,
                                            "column": 61
                                          },
                                          "end": {
                                            "line": 581,
                                            "column": 62
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  }
                                ]
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 24622,
                              "end": 24748,
                              "loc": {
                                "start": {
                                  "line": 583,
                                  "column": 16
                                },
                                "end": {
                                  "line": 586,
                                  "column": 18
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 24622,
                                "end": 24747,
                                "loc": {
                                  "start": {
                                    "line": 583,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 586,
                                    "column": 17
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 24622,
                                  "end": 24637,
                                  "loc": {
                                    "start": {
                                      "line": 583,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 583,
                                      "column": 31
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 24622,
                                    "end": 24632,
                                    "loc": {
                                      "start": {
                                        "line": 583,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 583,
                                        "column": 26
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 24622,
                                      "end": 24626,
                                      "loc": {
                                        "start": {
                                          "line": 583,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 583,
                                          "column": 20
                                        }
                                      },
                                      "name": "geom"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 24627,
                                      "end": 24632,
                                      "loc": {
                                        "start": {
                                          "line": 583,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 583,
                                          "column": 26
                                        }
                                      },
                                      "name": "faces"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 24633,
                                    "end": 24637,
                                    "loc": {
                                      "start": {
                                        "line": 583,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 583,
                                        "column": 31
                                      }
                                    },
                                    "name": "push"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "NewExpression",
                                    "start": 24659,
                                    "end": 24683,
                                    "loc": {
                                      "start": {
                                        "line": 584,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 584,
                                        "column": 44
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 24663,
                                      "end": 24674,
                                      "loc": {
                                        "start": {
                                          "line": 584,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 584,
                                          "column": 35
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 24663,
                                        "end": 24668,
                                        "loc": {
                                          "start": {
                                            "line": 584,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 584,
                                            "column": 29
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 24669,
                                        "end": 24674,
                                        "loc": {
                                          "start": {
                                            "line": 584,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 584,
                                            "column": 35
                                          }
                                        },
                                        "name": "Face3"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Literal",
                                        "start": 24675,
                                        "end": 24676,
                                        "loc": {
                                          "start": {
                                            "line": 584,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 584,
                                            "column": 37
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 24678,
                                        "end": 24679,
                                        "loc": {
                                          "start": {
                                            "line": 584,
                                            "column": 39
                                          },
                                          "end": {
                                            "line": 584,
                                            "column": 40
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 24681,
                                        "end": 24682,
                                        "loc": {
                                          "start": {
                                            "line": 584,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 584,
                                            "column": 43
                                          }
                                        },
                                        "value": 2,
                                        "rawValue": 2,
                                        "raw": "2"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "NewExpression",
                                    "start": 24705,
                                    "end": 24729,
                                    "loc": {
                                      "start": {
                                        "line": 585,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 585,
                                        "column": 44
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 24709,
                                      "end": 24720,
                                      "loc": {
                                        "start": {
                                          "line": 585,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 585,
                                          "column": 35
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 24709,
                                        "end": 24714,
                                        "loc": {
                                          "start": {
                                            "line": 585,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 585,
                                            "column": 29
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 24715,
                                        "end": 24720,
                                        "loc": {
                                          "start": {
                                            "line": 585,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 585,
                                            "column": 35
                                          }
                                        },
                                        "name": "Face3"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Literal",
                                        "start": 24721,
                                        "end": 24722,
                                        "loc": {
                                          "start": {
                                            "line": 585,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 585,
                                            "column": 37
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 24724,
                                        "end": 24725,
                                        "loc": {
                                          "start": {
                                            "line": 585,
                                            "column": 39
                                          },
                                          "end": {
                                            "line": 585,
                                            "column": 40
                                          }
                                        },
                                        "value": 2,
                                        "rawValue": 2,
                                        "raw": "2"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 24727,
                                        "end": 24728,
                                        "loc": {
                                          "start": {
                                            "line": 585,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 585,
                                            "column": 43
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      }
                                    ]
                                  }
                                ]
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 24765,
                              "end": 24791,
                              "loc": {
                                "start": {
                                  "line": 587,
                                  "column": 16
                                },
                                "end": {
                                  "line": 587,
                                  "column": 42
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 24765,
                                "end": 24790,
                                "loc": {
                                  "start": {
                                    "line": 587,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 587,
                                    "column": 41
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 24765,
                                  "end": 24788,
                                  "loc": {
                                    "start": {
                                      "line": 587,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 587,
                                      "column": 39
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 24765,
                                    "end": 24769,
                                    "loc": {
                                      "start": {
                                        "line": 587,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 587,
                                        "column": 20
                                      }
                                    },
                                    "name": "geom"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 24770,
                                    "end": 24788,
                                    "loc": {
                                      "start": {
                                        "line": 587,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 587,
                                        "column": 39
                                      }
                                    },
                                    "name": "computeFaceNormals"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              }
                            },
                            {
                              "type": "VariableDeclaration",
                              "start": 24809,
                              "end": 24889,
                              "loc": {
                                "start": {
                                  "line": 589,
                                  "column": 16
                                },
                                "end": {
                                  "line": 589,
                                  "column": 96
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 24813,
                                  "end": 24888,
                                  "loc": {
                                    "start": {
                                      "line": 589,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 589,
                                      "column": 95
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 24813,
                                    "end": 24817,
                                    "loc": {
                                      "start": {
                                        "line": 589,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 589,
                                        "column": 24
                                      }
                                    },
                                    "name": "mesh"
                                  },
                                  "init": {
                                    "type": "NewExpression",
                                    "start": 24820,
                                    "end": 24888,
                                    "loc": {
                                      "start": {
                                        "line": 589,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 589,
                                        "column": 95
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 24824,
                                      "end": 24834,
                                      "loc": {
                                        "start": {
                                          "line": 589,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 589,
                                          "column": 41
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 24824,
                                        "end": 24829,
                                        "loc": {
                                          "start": {
                                            "line": 589,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 589,
                                            "column": 36
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 24830,
                                        "end": 24834,
                                        "loc": {
                                          "start": {
                                            "line": 589,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 589,
                                            "column": 41
                                          }
                                        },
                                        "name": "Mesh"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 24835,
                                        "end": 24839,
                                        "loc": {
                                          "start": {
                                            "line": 589,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 589,
                                            "column": 46
                                          }
                                        },
                                        "name": "geom"
                                      },
                                      {
                                        "type": "NewExpression",
                                        "start": 24841,
                                        "end": 24887,
                                        "loc": {
                                          "start": {
                                            "line": 589,
                                            "column": 48
                                          },
                                          "end": {
                                            "line": 589,
                                            "column": 94
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 24845,
                                          "end": 24868,
                                          "loc": {
                                            "start": {
                                              "line": 589,
                                              "column": 52
                                            },
                                            "end": {
                                              "line": 589,
                                              "column": 75
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 24845,
                                            "end": 24850,
                                            "loc": {
                                              "start": {
                                                "line": 589,
                                                "column": 52
                                              },
                                              "end": {
                                                "line": 589,
                                                "column": 57
                                              }
                                            },
                                            "name": "THREE"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 24851,
                                            "end": 24868,
                                            "loc": {
                                              "start": {
                                                "line": 589,
                                                "column": 58
                                              },
                                              "end": {
                                                "line": 589,
                                                "column": 75
                                              }
                                            },
                                            "name": "MeshBasicMaterial"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "ObjectExpression",
                                            "start": 24869,
                                            "end": 24886,
                                            "loc": {
                                              "start": {
                                                "line": 589,
                                                "column": 76
                                              },
                                              "end": {
                                                "line": 589,
                                                "column": 93
                                              }
                                            },
                                            "properties": [
                                              {
                                                "type": "Property",
                                                "start": 24870,
                                                "end": 24885,
                                                "loc": {
                                                  "start": {
                                                    "line": 589,
                                                    "column": 77
                                                  },
                                                  "end": {
                                                    "line": 589,
                                                    "column": 92
                                                  }
                                                },
                                                "method": false,
                                                "shorthand": false,
                                                "computed": false,
                                                "key": {
                                                  "type": "Identifier",
                                                  "start": 24870,
                                                  "end": 24875,
                                                  "loc": {
                                                    "start": {
                                                      "line": 589,
                                                      "column": 77
                                                    },
                                                    "end": {
                                                      "line": 589,
                                                      "column": 82
                                                    }
                                                  },
                                                  "name": "color"
                                                },
                                                "value": {
                                                  "type": "Literal",
                                                  "start": 24877,
                                                  "end": 24885,
                                                  "loc": {
                                                    "start": {
                                                      "line": 589,
                                                      "column": 84
                                                    },
                                                    "end": {
                                                      "line": 589,
                                                      "column": 92
                                                    }
                                                  },
                                                  "value": 8388479,
                                                  "rawValue": 8388479,
                                                  "raw": "0x7fff7f"
                                                },
                                                "kind": "init"
                                              }
                                            ]
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                }
                              ],
                              "kind": "var",
                              "trailingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "set position and orientation of arrow",
                                  "start": 24906,
                                  "end": 24945,
                                  "loc": {
                                    "start": {
                                      "line": 590,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 590,
                                      "column": 55
                                    }
                                  },
                                  "range": [
                                    24906,
                                    24945
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 24962,
                              "end": 24986,
                              "loc": {
                                "start": {
                                  "line": 591,
                                  "column": 16
                                },
                                "end": {
                                  "line": 591,
                                  "column": 40
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 24962,
                                "end": 24985,
                                "loc": {
                                  "start": {
                                    "line": 591,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 591,
                                    "column": 39
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 24962,
                                  "end": 24980,
                                  "loc": {
                                    "start": {
                                      "line": 591,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 591,
                                      "column": 34
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 24962,
                                    "end": 24975,
                                    "loc": {
                                      "start": {
                                        "line": 591,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 591,
                                        "column": 29
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 24962,
                                      "end": 24966,
                                      "loc": {
                                        "start": {
                                          "line": 591,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 591,
                                          "column": 20
                                        }
                                      },
                                      "name": "mesh",
                                      "leadingComments": null
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 24967,
                                      "end": 24975,
                                      "loc": {
                                        "start": {
                                          "line": 591,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 591,
                                          "column": 29
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false,
                                    "leadingComments": null
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 24976,
                                    "end": 24980,
                                    "loc": {
                                      "start": {
                                        "line": 591,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 591,
                                        "column": 34
                                      }
                                    },
                                    "name": "copy"
                                  },
                                  "computed": false,
                                  "leadingComments": null
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 24981,
                                    "end": 24984,
                                    "loc": {
                                      "start": {
                                        "line": 591,
                                        "column": 35
                                      },
                                      "end": {
                                        "line": 591,
                                        "column": 38
                                      }
                                    },
                                    "name": "pos"
                                  }
                                ],
                                "leadingComments": null
                              },
                              "leadingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "set position and orientation of arrow",
                                  "start": 24906,
                                  "end": 24945,
                                  "loc": {
                                    "start": {
                                      "line": 590,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 590,
                                      "column": 55
                                    }
                                  },
                                  "range": [
                                    24906,
                                    24945
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 25003,
                              "end": 25071,
                              "loc": {
                                "start": {
                                  "line": 592,
                                  "column": 16
                                },
                                "end": {
                                  "line": 592,
                                  "column": 84
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 25003,
                                "end": 25070,
                                "loc": {
                                  "start": {
                                    "line": 592,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 592,
                                    "column": 83
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 25003,
                                  "end": 25037,
                                  "loc": {
                                    "start": {
                                      "line": 592,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 592,
                                      "column": 50
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 25003,
                                    "end": 25018,
                                    "loc": {
                                      "start": {
                                        "line": 592,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 592,
                                        "column": 31
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 25003,
                                      "end": 25007,
                                      "loc": {
                                        "start": {
                                          "line": 592,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 592,
                                          "column": 20
                                        }
                                      },
                                      "name": "mesh"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 25008,
                                      "end": 25018,
                                      "loc": {
                                        "start": {
                                          "line": 592,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 592,
                                          "column": 31
                                        }
                                      },
                                      "name": "quaternion"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 25019,
                                    "end": 25037,
                                    "loc": {
                                      "start": {
                                        "line": 592,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 592,
                                        "column": 50
                                      }
                                    },
                                    "name": "setFromUnitVectors"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "NewExpression",
                                    "start": 25038,
                                    "end": 25064,
                                    "loc": {
                                      "start": {
                                        "line": 592,
                                        "column": 51
                                      },
                                      "end": {
                                        "line": 592,
                                        "column": 77
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 25042,
                                      "end": 25055,
                                      "loc": {
                                        "start": {
                                          "line": 592,
                                          "column": 55
                                        },
                                        "end": {
                                          "line": 592,
                                          "column": 68
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 25042,
                                        "end": 25047,
                                        "loc": {
                                          "start": {
                                            "line": 592,
                                            "column": 55
                                          },
                                          "end": {
                                            "line": 592,
                                            "column": 60
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 25048,
                                        "end": 25055,
                                        "loc": {
                                          "start": {
                                            "line": 592,
                                            "column": 61
                                          },
                                          "end": {
                                            "line": 592,
                                            "column": 68
                                          }
                                        },
                                        "name": "Vector3"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Literal",
                                        "start": 25056,
                                        "end": 25057,
                                        "loc": {
                                          "start": {
                                            "line": 592,
                                            "column": 69
                                          },
                                          "end": {
                                            "line": 592,
                                            "column": 70
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 25059,
                                        "end": 25060,
                                        "loc": {
                                          "start": {
                                            "line": 592,
                                            "column": 72
                                          },
                                          "end": {
                                            "line": 592,
                                            "column": 73
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 25062,
                                        "end": 25063,
                                        "loc": {
                                          "start": {
                                            "line": 592,
                                            "column": 75
                                          },
                                          "end": {
                                            "line": 592,
                                            "column": 76
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "Identifier",
                                    "start": 25066,
                                    "end": 25069,
                                    "loc": {
                                      "start": {
                                        "line": 592,
                                        "column": 79
                                      },
                                      "end": {
                                        "line": 592,
                                        "column": 82
                                      }
                                    },
                                    "name": "dir"
                                  }
                                ]
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 25089,
                              "end": 25107,
                              "loc": {
                                "start": {
                                  "line": 594,
                                  "column": 16
                                },
                                "end": {
                                  "line": 594,
                                  "column": 34
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 25089,
                                "end": 25106,
                                "loc": {
                                  "start": {
                                    "line": 594,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 594,
                                    "column": 33
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 25089,
                                  "end": 25100,
                                  "loc": {
                                    "start": {
                                      "line": 594,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 594,
                                      "column": 27
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 25089,
                                    "end": 25095,
                                    "loc": {
                                      "start": {
                                        "line": 594,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 594,
                                        "column": 22
                                      }
                                    },
                                    "name": "result"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 25096,
                                    "end": 25100,
                                    "loc": {
                                      "start": {
                                        "line": 594,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 594,
                                        "column": 27
                                      }
                                    },
                                    "name": "push"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 25101,
                                    "end": 25105,
                                    "loc": {
                                      "start": {
                                        "line": 594,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 594,
                                        "column": 32
                                      }
                                    },
                                    "name": "mesh"
                                  }
                                ]
                              }
                            },
                            {
                              "type": "BreakStatement",
                              "start": 25124,
                              "end": 25130,
                              "loc": {
                                "start": {
                                  "line": 595,
                                  "column": 16
                                },
                                "end": {
                                  "line": 595,
                                  "column": 22
                                }
                              },
                              "label": null
                            }
                          ],
                          "test": {
                            "type": "Literal",
                            "start": 23886,
                            "end": 23892,
                            "loc": {
                              "start": {
                                "line": 569,
                                "column": 17
                              },
                              "end": {
                                "line": 569,
                                "column": 23
                              }
                            },
                            "value": "Cone",
                            "rawValue": "Cone",
                            "raw": "'Cone'"
                          }
                        },
                        {
                          "type": "SwitchCase",
                          "start": 25144,
                          "end": 26606,
                          "loc": {
                            "start": {
                              "line": 597,
                              "column": 12
                            },
                            "end": {
                              "line": 626,
                              "column": 22
                            }
                          },
                          "consequent": [
                            {
                              "type": "IfStatement",
                              "start": 25173,
                              "end": 25201,
                              "loc": {
                                "start": {
                                  "line": 598,
                                  "column": 16
                                },
                                "end": {
                                  "line": 598,
                                  "column": 44
                                }
                              },
                              "test": {
                                "type": "BinaryExpression",
                                "start": 25177,
                                "end": 25193,
                                "loc": {
                                  "start": {
                                    "line": 598,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 598,
                                    "column": 36
                                  }
                                },
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 25177,
                                  "end": 25186,
                                  "loc": {
                                    "start": {
                                      "line": 598,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 598,
                                      "column": 29
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 25177,
                                    "end": 25181,
                                    "loc": {
                                      "start": {
                                        "line": 598,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 598,
                                        "column": 24
                                      }
                                    },
                                    "name": "data"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 25182,
                                    "end": 25186,
                                    "loc": {
                                      "start": {
                                        "line": 598,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 598,
                                        "column": 29
                                      }
                                    },
                                    "name": "text"
                                  },
                                  "computed": false
                                },
                                "operator": "==",
                                "right": {
                                  "type": "Literal",
                                  "start": 25190,
                                  "end": 25193,
                                  "loc": {
                                    "start": {
                                      "line": 598,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 598,
                                      "column": 36
                                    }
                                  },
                                  "value": "@",
                                  "rawValue": "@",
                                  "raw": "'@'"
                                }
                              },
                              "consequent": {
                                "type": "BreakStatement",
                                "start": 25195,
                                "end": 25201,
                                "loc": {
                                  "start": {
                                    "line": 598,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 598,
                                    "column": 44
                                  }
                                },
                                "label": null,
                                "leadingComments": null,
                                "trailingComments": null
                              },
                              "alternate": null,
                              "trailingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "no idea why this trash comes",
                                  "start": 25202,
                                  "end": 25232,
                                  "loc": {
                                    "start": {
                                      "line": 598,
                                      "column": 45
                                    },
                                    "end": {
                                      "line": 598,
                                      "column": 75
                                    }
                                  },
                                  "range": [
                                    25202,
                                    25232
                                  ]
                                },
                                {
                                  "type": "CommentLine",
                                  "value": "note: only following types of text are properly supported:",
                                  "start": 25249,
                                  "end": 25309,
                                  "loc": {
                                    "start": {
                                      "line": 599,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 599,
                                      "column": 76
                                    }
                                  },
                                  "range": [
                                    25249,
                                    25309
                                  ]
                                },
                                {
                                  "type": "CommentLine",
                                  "value": "  textType  = 1   (screen-oriented, fixed-sized text)",
                                  "start": 25326,
                                  "end": 25381,
                                  "loc": {
                                    "start": {
                                      "line": 600,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 600,
                                      "column": 71
                                    }
                                  },
                                  "range": [
                                    25326,
                                    25381
                                  ]
                                },
                                {
                                  "type": "CommentLine",
                                  "value": "  alignment = 0   (left/baseline-aligned text)",
                                  "start": 25398,
                                  "end": 25446,
                                  "loc": {
                                    "start": {
                                      "line": 601,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 601,
                                      "column": 64
                                    }
                                  },
                                  "range": [
                                    25398,
                                    25446
                                  ]
                                },
                                {
                                  "type": "CommentLine",
                                  "value": "create 3D text",
                                  "start": 25464,
                                  "end": 25480,
                                  "loc": {
                                    "start": {
                                      "line": 603,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 603,
                                      "column": 32
                                    }
                                  },
                                  "range": [
                                    25464,
                                    25480
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "VariableDeclaration",
                              "start": 25497,
                              "end": 25557,
                              "loc": {
                                "start": {
                                  "line": 604,
                                  "column": 16
                                },
                                "end": {
                                  "line": 604,
                                  "column": 76
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 25501,
                                  "end": 25556,
                                  "loc": {
                                    "start": {
                                      "line": 604,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 604,
                                      "column": 75
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 25501,
                                    "end": 25507,
                                    "loc": {
                                      "start": {
                                        "line": 604,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 604,
                                        "column": 26
                                      }
                                    },
                                    "name": "params",
                                    "leadingComments": null
                                  },
                                  "init": {
                                    "type": "ObjectExpression",
                                    "start": 25510,
                                    "end": 25556,
                                    "loc": {
                                      "start": {
                                        "line": 604,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 604,
                                        "column": 75
                                      }
                                    },
                                    "properties": [
                                      {
                                        "type": "Property",
                                        "start": 25511,
                                        "end": 25518,
                                        "loc": {
                                          "start": {
                                            "line": 604,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 604,
                                            "column": 37
                                          }
                                        },
                                        "method": false,
                                        "shorthand": false,
                                        "computed": false,
                                        "key": {
                                          "type": "Identifier",
                                          "start": 25511,
                                          "end": 25515,
                                          "loc": {
                                            "start": {
                                              "line": 604,
                                              "column": 30
                                            },
                                            "end": {
                                              "line": 604,
                                              "column": 34
                                            }
                                          },
                                          "name": "size"
                                        },
                                        "value": {
                                          "type": "Literal",
                                          "start": 25517,
                                          "end": 25518,
                                          "loc": {
                                            "start": {
                                              "line": 604,
                                              "column": 36
                                            },
                                            "end": {
                                              "line": 604,
                                              "column": 37
                                            }
                                          },
                                          "value": 1,
                                          "rawValue": 1,
                                          "raw": "1"
                                        },
                                        "kind": "init"
                                      },
                                      {
                                        "type": "Property",
                                        "start": 25520,
                                        "end": 25529,
                                        "loc": {
                                          "start": {
                                            "line": 604,
                                            "column": 39
                                          },
                                          "end": {
                                            "line": 604,
                                            "column": 48
                                          }
                                        },
                                        "method": false,
                                        "shorthand": false,
                                        "computed": false,
                                        "key": {
                                          "type": "Identifier",
                                          "start": 25520,
                                          "end": 25526,
                                          "loc": {
                                            "start": {
                                              "line": 604,
                                              "column": 39
                                            },
                                            "end": {
                                              "line": 604,
                                              "column": 45
                                            }
                                          },
                                          "name": "height"
                                        },
                                        "value": {
                                          "type": "Literal",
                                          "start": 25528,
                                          "end": 25529,
                                          "loc": {
                                            "start": {
                                              "line": 604,
                                              "column": 47
                                            },
                                            "end": {
                                              "line": 604,
                                              "column": 48
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        "kind": "init"
                                      },
                                      {
                                        "type": "Property",
                                        "start": 25531,
                                        "end": 25555,
                                        "loc": {
                                          "start": {
                                            "line": 604,
                                            "column": 50
                                          },
                                          "end": {
                                            "line": 604,
                                            "column": 74
                                          }
                                        },
                                        "method": false,
                                        "shorthand": false,
                                        "computed": false,
                                        "key": {
                                          "type": "Identifier",
                                          "start": 25531,
                                          "end": 25535,
                                          "loc": {
                                            "start": {
                                              "line": 604,
                                              "column": 50
                                            },
                                            "end": {
                                              "line": 604,
                                              "column": 54
                                            }
                                          },
                                          "name": "font"
                                        },
                                        "value": {
                                          "type": "MemberExpression",
                                          "start": 25537,
                                          "end": 25555,
                                          "loc": {
                                            "start": {
                                              "line": 604,
                                              "column": 56
                                            },
                                            "end": {
                                              "line": 604,
                                              "column": 74
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 25537,
                                            "end": 25550,
                                            "loc": {
                                              "start": {
                                                "line": 604,
                                                "column": 56
                                              },
                                              "end": {
                                                "line": 604,
                                                "column": 69
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 25537,
                                              "end": 25541,
                                              "loc": {
                                                "start": {
                                                  "line": 604,
                                                  "column": 56
                                                },
                                                "end": {
                                                  "line": 604,
                                                  "column": 60
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 25542,
                                              "end": 25550,
                                              "loc": {
                                                "start": {
                                                  "line": 604,
                                                  "column": 61
                                                },
                                                "end": {
                                                  "line": 604,
                                                  "column": 69
                                                }
                                              },
                                              "name": "sketcher"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 25551,
                                            "end": 25555,
                                            "loc": {
                                              "start": {
                                                "line": 604,
                                                "column": 70
                                              },
                                              "end": {
                                                "line": 604,
                                                "column": 74
                                              }
                                            },
                                            "name": "font"
                                          },
                                          "computed": false
                                        },
                                        "kind": "init"
                                      }
                                    ]
                                  },
                                  "leadingComments": null
                                }
                              ],
                              "kind": "var",
                              "leadingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "no idea why this trash comes",
                                  "start": 25202,
                                  "end": 25232,
                                  "loc": {
                                    "start": {
                                      "line": 598,
                                      "column": 45
                                    },
                                    "end": {
                                      "line": 598,
                                      "column": 75
                                    }
                                  },
                                  "range": [
                                    25202,
                                    25232
                                  ]
                                },
                                {
                                  "type": "CommentLine",
                                  "value": "note: only following types of text are properly supported:",
                                  "start": 25249,
                                  "end": 25309,
                                  "loc": {
                                    "start": {
                                      "line": 599,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 599,
                                      "column": 76
                                    }
                                  },
                                  "range": [
                                    25249,
                                    25309
                                  ]
                                },
                                {
                                  "type": "CommentLine",
                                  "value": "  textType  = 1   (screen-oriented, fixed-sized text)",
                                  "start": 25326,
                                  "end": 25381,
                                  "loc": {
                                    "start": {
                                      "line": 600,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 600,
                                      "column": 71
                                    }
                                  },
                                  "range": [
                                    25326,
                                    25381
                                  ]
                                },
                                {
                                  "type": "CommentLine",
                                  "value": "  alignment = 0   (left/baseline-aligned text)",
                                  "start": 25398,
                                  "end": 25446,
                                  "loc": {
                                    "start": {
                                      "line": 601,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 601,
                                      "column": 64
                                    }
                                  },
                                  "range": [
                                    25398,
                                    25446
                                  ]
                                },
                                {
                                  "type": "CommentLine",
                                  "value": "create 3D text",
                                  "start": 25464,
                                  "end": 25480,
                                  "loc": {
                                    "start": {
                                      "line": 603,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 603,
                                      "column": 32
                                    }
                                  },
                                  "range": [
                                    25464,
                                    25480
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "VariableDeclaration",
                              "start": 25574,
                              "end": 25627,
                              "loc": {
                                "start": {
                                  "line": 605,
                                  "column": 16
                                },
                                "end": {
                                  "line": 605,
                                  "column": 69
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 25578,
                                  "end": 25626,
                                  "loc": {
                                    "start": {
                                      "line": 605,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 605,
                                      "column": 68
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 25578,
                                    "end": 25582,
                                    "loc": {
                                      "start": {
                                        "line": 605,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 605,
                                        "column": 24
                                      }
                                    },
                                    "name": "geom"
                                  },
                                  "init": {
                                    "type": "NewExpression",
                                    "start": 25585,
                                    "end": 25626,
                                    "loc": {
                                      "start": {
                                        "line": 605,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 605,
                                        "column": 68
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 25589,
                                      "end": 25607,
                                      "loc": {
                                        "start": {
                                          "line": 605,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 605,
                                          "column": 49
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 25589,
                                        "end": 25594,
                                        "loc": {
                                          "start": {
                                            "line": 605,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 605,
                                            "column": 36
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 25595,
                                        "end": 25607,
                                        "loc": {
                                          "start": {
                                            "line": 605,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 605,
                                            "column": 49
                                          }
                                        },
                                        "name": "TextGeometry"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "MemberExpression",
                                        "start": 25608,
                                        "end": 25617,
                                        "loc": {
                                          "start": {
                                            "line": 605,
                                            "column": 50
                                          },
                                          "end": {
                                            "line": 605,
                                            "column": 59
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 25608,
                                          "end": 25612,
                                          "loc": {
                                            "start": {
                                              "line": 605,
                                              "column": 50
                                            },
                                            "end": {
                                              "line": 605,
                                              "column": 54
                                            }
                                          },
                                          "name": "data"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 25613,
                                          "end": 25617,
                                          "loc": {
                                            "start": {
                                              "line": 605,
                                              "column": 55
                                            },
                                            "end": {
                                              "line": 605,
                                              "column": 59
                                            }
                                          },
                                          "name": "text"
                                        },
                                        "computed": false
                                      },
                                      {
                                        "type": "Identifier",
                                        "start": 25619,
                                        "end": 25625,
                                        "loc": {
                                          "start": {
                                            "line": 605,
                                            "column": 61
                                          },
                                          "end": {
                                            "line": 605,
                                            "column": 67
                                          }
                                        },
                                        "name": "params"
                                      }
                                    ]
                                  }
                                }
                              ],
                              "kind": "var"
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 25644,
                              "end": 25670,
                              "loc": {
                                "start": {
                                  "line": 606,
                                  "column": 16
                                },
                                "end": {
                                  "line": 606,
                                  "column": 42
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 25644,
                                "end": 25669,
                                "loc": {
                                  "start": {
                                    "line": 606,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 606,
                                    "column": 41
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 25644,
                                  "end": 25667,
                                  "loc": {
                                    "start": {
                                      "line": 606,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 606,
                                      "column": 39
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 25644,
                                    "end": 25648,
                                    "loc": {
                                      "start": {
                                        "line": 606,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 606,
                                        "column": 20
                                      }
                                    },
                                    "name": "geom"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 25649,
                                    "end": 25667,
                                    "loc": {
                                      "start": {
                                        "line": 606,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 606,
                                        "column": 39
                                      }
                                    },
                                    "name": "computeBoundingBox"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              },
                              "trailingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "for debugging",
                                  "start": 25672,
                                  "end": 25687,
                                  "loc": {
                                    "start": {
                                      "line": 606,
                                      "column": 44
                                    },
                                    "end": {
                                      "line": 606,
                                      "column": 59
                                    }
                                  },
                                  "range": [
                                    25672,
                                    25687
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "VariableDeclaration",
                              "start": 25704,
                              "end": 25784,
                              "loc": {
                                "start": {
                                  "line": 607,
                                  "column": 16
                                },
                                "end": {
                                  "line": 607,
                                  "column": 96
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 25708,
                                  "end": 25783,
                                  "loc": {
                                    "start": {
                                      "line": 607,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 607,
                                      "column": 95
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 25708,
                                    "end": 25712,
                                    "loc": {
                                      "start": {
                                        "line": 607,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 607,
                                        "column": 24
                                      }
                                    },
                                    "name": "mesh",
                                    "leadingComments": null
                                  },
                                  "init": {
                                    "type": "NewExpression",
                                    "start": 25715,
                                    "end": 25783,
                                    "loc": {
                                      "start": {
                                        "line": 607,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 607,
                                        "column": 95
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 25719,
                                      "end": 25729,
                                      "loc": {
                                        "start": {
                                          "line": 607,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 607,
                                          "column": 41
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 25719,
                                        "end": 25724,
                                        "loc": {
                                          "start": {
                                            "line": 607,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 607,
                                            "column": 36
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 25725,
                                        "end": 25729,
                                        "loc": {
                                          "start": {
                                            "line": 607,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 607,
                                            "column": 41
                                          }
                                        },
                                        "name": "Mesh"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 25730,
                                        "end": 25734,
                                        "loc": {
                                          "start": {
                                            "line": 607,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 607,
                                            "column": 46
                                          }
                                        },
                                        "name": "geom"
                                      },
                                      {
                                        "type": "NewExpression",
                                        "start": 25736,
                                        "end": 25782,
                                        "loc": {
                                          "start": {
                                            "line": 607,
                                            "column": 48
                                          },
                                          "end": {
                                            "line": 607,
                                            "column": 94
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 25740,
                                          "end": 25763,
                                          "loc": {
                                            "start": {
                                              "line": 607,
                                              "column": 52
                                            },
                                            "end": {
                                              "line": 607,
                                              "column": 75
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 25740,
                                            "end": 25745,
                                            "loc": {
                                              "start": {
                                                "line": 607,
                                                "column": 52
                                              },
                                              "end": {
                                                "line": 607,
                                                "column": 57
                                              }
                                            },
                                            "name": "THREE"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 25746,
                                            "end": 25763,
                                            "loc": {
                                              "start": {
                                                "line": 607,
                                                "column": 58
                                              },
                                              "end": {
                                                "line": 607,
                                                "column": 75
                                              }
                                            },
                                            "name": "MeshBasicMaterial"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "ObjectExpression",
                                            "start": 25764,
                                            "end": 25781,
                                            "loc": {
                                              "start": {
                                                "line": 607,
                                                "column": 76
                                              },
                                              "end": {
                                                "line": 607,
                                                "column": 93
                                              }
                                            },
                                            "properties": [
                                              {
                                                "type": "Property",
                                                "start": 25765,
                                                "end": 25780,
                                                "loc": {
                                                  "start": {
                                                    "line": 607,
                                                    "column": 77
                                                  },
                                                  "end": {
                                                    "line": 607,
                                                    "column": 92
                                                  }
                                                },
                                                "method": false,
                                                "shorthand": false,
                                                "computed": false,
                                                "key": {
                                                  "type": "Identifier",
                                                  "start": 25765,
                                                  "end": 25770,
                                                  "loc": {
                                                    "start": {
                                                      "line": 607,
                                                      "column": 77
                                                    },
                                                    "end": {
                                                      "line": 607,
                                                      "column": 82
                                                    }
                                                  },
                                                  "name": "color"
                                                },
                                                "value": {
                                                  "type": "Literal",
                                                  "start": 25772,
                                                  "end": 25780,
                                                  "loc": {
                                                    "start": {
                                                      "line": 607,
                                                      "column": 84
                                                    },
                                                    "end": {
                                                      "line": 607,
                                                      "column": 92
                                                    }
                                                  },
                                                  "value": 4194239,
                                                  "rawValue": 4194239,
                                                  "raw": "0x3fffbf"
                                                },
                                                "kind": "init"
                                              }
                                            ]
                                          }
                                        ]
                                      }
                                    ]
                                  },
                                  "leadingComments": null
                                }
                              ],
                              "kind": "var",
                              "leadingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "for debugging",
                                  "start": 25672,
                                  "end": 25687,
                                  "loc": {
                                    "start": {
                                      "line": 606,
                                      "column": 44
                                    },
                                    "end": {
                                      "line": 606,
                                      "column": 59
                                    }
                                  },
                                  "range": [
                                    25672,
                                    25687
                                  ]
                                }
                              ],
                              "trailingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "set position in sketch coordinates",
                                  "start": 25801,
                                  "end": 25837,
                                  "loc": {
                                    "start": {
                                      "line": 608,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 608,
                                      "column": 52
                                    }
                                  },
                                  "range": [
                                    25801,
                                    25837
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "VariableDeclaration",
                              "start": 25854,
                              "end": 25885,
                              "loc": {
                                "start": {
                                  "line": 609,
                                  "column": 16
                                },
                                "end": {
                                  "line": 609,
                                  "column": 47
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 25858,
                                  "end": 25884,
                                  "loc": {
                                    "start": {
                                      "line": 609,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 609,
                                      "column": 46
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 25858,
                                    "end": 25861,
                                    "loc": {
                                      "start": {
                                        "line": 609,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 609,
                                        "column": 23
                                      }
                                    },
                                    "name": "obj",
                                    "leadingComments": null
                                  },
                                  "init": {
                                    "type": "NewExpression",
                                    "start": 25864,
                                    "end": 25884,
                                    "loc": {
                                      "start": {
                                        "line": 609,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 609,
                                        "column": 46
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 25868,
                                      "end": 25882,
                                      "loc": {
                                        "start": {
                                          "line": 609,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 609,
                                          "column": 44
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 25868,
                                        "end": 25873,
                                        "loc": {
                                          "start": {
                                            "line": 609,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 609,
                                            "column": 35
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 25874,
                                        "end": 25882,
                                        "loc": {
                                          "start": {
                                            "line": 609,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 609,
                                            "column": 44
                                          }
                                        },
                                        "name": "Object3D"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  },
                                  "leadingComments": null
                                }
                              ],
                              "kind": "var",
                              "leadingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "set position in sketch coordinates",
                                  "start": 25801,
                                  "end": 25837,
                                  "loc": {
                                    "start": {
                                      "line": 608,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 608,
                                      "column": 52
                                    }
                                  },
                                  "range": [
                                    25801,
                                    25837
                                  ]
                                }
                              ],
                              "trailingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "obj.fullName = factoryPart.name;\t//no idea what it is...",
                                  "start": 25902,
                                  "end": 25960,
                                  "loc": {
                                    "start": {
                                      "line": 610,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 610,
                                      "column": 74
                                    }
                                  },
                                  "range": [
                                    25902,
                                    25960
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 25977,
                              "end": 25993,
                              "loc": {
                                "start": {
                                  "line": 611,
                                  "column": 16
                                },
                                "end": {
                                  "line": 611,
                                  "column": 32
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 25977,
                                "end": 25992,
                                "loc": {
                                  "start": {
                                    "line": 611,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 611,
                                    "column": 31
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 25977,
                                  "end": 25985,
                                  "loc": {
                                    "start": {
                                      "line": 611,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 611,
                                      "column": 24
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 25977,
                                    "end": 25980,
                                    "loc": {
                                      "start": {
                                        "line": 611,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 611,
                                        "column": 19
                                      }
                                    },
                                    "name": "obj",
                                    "leadingComments": null
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 25981,
                                    "end": 25985,
                                    "loc": {
                                      "start": {
                                        "line": 611,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 611,
                                        "column": 24
                                      }
                                    },
                                    "name": "mesh"
                                  },
                                  "computed": false,
                                  "leadingComments": null
                                },
                                "right": {
                                  "type": "Identifier",
                                  "start": 25988,
                                  "end": 25992,
                                  "loc": {
                                    "start": {
                                      "line": 611,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 611,
                                      "column": 31
                                    }
                                  },
                                  "name": "mesh"
                                },
                                "leadingComments": null
                              },
                              "leadingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "obj.fullName = factoryPart.name;\t//no idea what it is...",
                                  "start": 25902,
                                  "end": 25960,
                                  "loc": {
                                    "start": {
                                      "line": 610,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 610,
                                      "column": 74
                                    }
                                  },
                                  "range": [
                                    25902,
                                    25960
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 26010,
                              "end": 26024,
                              "loc": {
                                "start": {
                                  "line": 612,
                                  "column": 16
                                },
                                "end": {
                                  "line": 612,
                                  "column": 30
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 26010,
                                "end": 26023,
                                "loc": {
                                  "start": {
                                    "line": 612,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 612,
                                    "column": 29
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 26010,
                                  "end": 26017,
                                  "loc": {
                                    "start": {
                                      "line": 612,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 612,
                                      "column": 23
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 26010,
                                    "end": 26013,
                                    "loc": {
                                      "start": {
                                        "line": 612,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 612,
                                        "column": 19
                                      }
                                    },
                                    "name": "obj"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 26014,
                                    "end": 26017,
                                    "loc": {
                                      "start": {
                                        "line": 612,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 612,
                                        "column": 23
                                      }
                                    },
                                    "name": "add"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 26018,
                                    "end": 26022,
                                    "loc": {
                                      "start": {
                                        "line": 612,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 612,
                                        "column": 28
                                      }
                                    },
                                    "name": "mesh"
                                  }
                                ]
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 26041,
                              "end": 26106,
                              "loc": {
                                "start": {
                                  "line": 613,
                                  "column": 16
                                },
                                "end": {
                                  "line": 613,
                                  "column": 81
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 26041,
                                "end": 26105,
                                "loc": {
                                  "start": {
                                    "line": 613,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 613,
                                    "column": 80
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 26041,
                                  "end": 26091,
                                  "loc": {
                                    "start": {
                                      "line": 613,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 613,
                                      "column": 66
                                    }
                                  },
                                  "object": {
                                    "type": "CallExpression",
                                    "start": 26041,
                                    "end": 26078,
                                    "loc": {
                                      "start": {
                                        "line": 613,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 613,
                                        "column": 53
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 26041,
                                      "end": 26063,
                                      "loc": {
                                        "start": {
                                          "line": 613,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 613,
                                          "column": 38
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 26041,
                                        "end": 26053,
                                        "loc": {
                                          "start": {
                                            "line": 613,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 613,
                                            "column": 28
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 26041,
                                          "end": 26044,
                                          "loc": {
                                            "start": {
                                              "line": 613,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 613,
                                              "column": 19
                                            }
                                          },
                                          "name": "obj"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 26045,
                                          "end": 26053,
                                          "loc": {
                                            "start": {
                                              "line": 613,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 613,
                                              "column": 28
                                            }
                                          },
                                          "name": "position"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 26054,
                                        "end": 26063,
                                        "loc": {
                                          "start": {
                                            "line": 613,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 613,
                                            "column": 38
                                          }
                                        },
                                        "name": "fromArray"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "MemberExpression",
                                        "start": 26064,
                                        "end": 26077,
                                        "loc": {
                                          "start": {
                                            "line": 613,
                                            "column": 39
                                          },
                                          "end": {
                                            "line": 613,
                                            "column": 52
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 26064,
                                          "end": 26068,
                                          "loc": {
                                            "start": {
                                              "line": 613,
                                              "column": 39
                                            },
                                            "end": {
                                              "line": 613,
                                              "column": 43
                                            }
                                          },
                                          "name": "data"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 26069,
                                          "end": 26077,
                                          "loc": {
                                            "start": {
                                              "line": 613,
                                              "column": 44
                                            },
                                            "end": {
                                              "line": 613,
                                              "column": 52
                                            }
                                          },
                                          "name": "position"
                                        },
                                        "computed": false
                                      }
                                    ]
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 26079,
                                    "end": 26091,
                                    "loc": {
                                      "start": {
                                        "line": 613,
                                        "column": 54
                                      },
                                      "end": {
                                        "line": 613,
                                        "column": 66
                                      }
                                    },
                                    "name": "applyMatrix4"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 26092,
                                    "end": 26104,
                                    "loc": {
                                      "start": {
                                        "line": 613,
                                        "column": 67
                                      },
                                      "end": {
                                        "line": 613,
                                        "column": 79
                                      }
                                    },
                                    "name": "worldToLocal"
                                  }
                                ]
                              },
                              "trailingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "add pixel-based sizing",
                                  "start": 26124,
                                  "end": 26148,
                                  "loc": {
                                    "start": {
                                      "line": 615,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 615,
                                      "column": 40
                                    }
                                  },
                                  "range": [
                                    26124,
                                    26148
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 26165,
                              "end": 26308,
                              "loc": {
                                "start": {
                                  "line": 616,
                                  "column": 16
                                },
                                "end": {
                                  "line": 619,
                                  "column": 18
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 26165,
                                "end": 26307,
                                "loc": {
                                  "start": {
                                    "line": 616,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 619,
                                    "column": 17
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 26165,
                                  "end": 26181,
                                  "loc": {
                                    "start": {
                                      "line": 616,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 616,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 26165,
                                    "end": 26168,
                                    "loc": {
                                      "start": {
                                        "line": 616,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 616,
                                        "column": 19
                                      }
                                    },
                                    "name": "obj",
                                    "leadingComments": null
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 26169,
                                    "end": 26181,
                                    "loc": {
                                      "start": {
                                        "line": 616,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 616,
                                        "column": 32
                                      }
                                    },
                                    "name": "setGeomSizes"
                                  },
                                  "computed": false,
                                  "leadingComments": null
                                },
                                "right": {
                                  "type": "FunctionExpression",
                                  "start": 26184,
                                  "end": 26307,
                                  "loc": {
                                    "start": {
                                      "line": 616,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 619,
                                      "column": 17
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": false,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 26193,
                                      "end": 26198,
                                      "loc": {
                                        "start": {
                                          "line": 616,
                                          "column": 44
                                        },
                                        "end": {
                                          "line": 616,
                                          "column": 49
                                        }
                                      },
                                      "name": "sizes"
                                    }
                                  ],
                                  "body": {
                                    "type": "BlockStatement",
                                    "start": 26200,
                                    "end": 26307,
                                    "loc": {
                                      "start": {
                                        "line": 616,
                                        "column": 51
                                      },
                                      "end": {
                                        "line": 619,
                                        "column": 17
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "VariableDeclaration",
                                        "start": 26222,
                                        "end": 26239,
                                        "loc": {
                                          "start": {
                                            "line": 617,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 617,
                                            "column": 37
                                          }
                                        },
                                        "declarations": [
                                          {
                                            "type": "VariableDeclarator",
                                            "start": 26226,
                                            "end": 26238,
                                            "loc": {
                                              "start": {
                                                "line": 617,
                                                "column": 24
                                              },
                                              "end": {
                                                "line": 617,
                                                "column": 36
                                              }
                                            },
                                            "id": {
                                              "type": "Identifier",
                                              "start": 26226,
                                              "end": 26227,
                                              "loc": {
                                                "start": {
                                                  "line": 617,
                                                  "column": 24
                                                },
                                                "end": {
                                                  "line": 617,
                                                  "column": 25
                                                }
                                              },
                                              "name": "s"
                                            },
                                            "init": {
                                              "type": "MemberExpression",
                                              "start": 26230,
                                              "end": 26238,
                                              "loc": {
                                                "start": {
                                                  "line": 617,
                                                  "column": 28
                                                },
                                                "end": {
                                                  "line": 617,
                                                  "column": 36
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 26230,
                                                "end": 26235,
                                                "loc": {
                                                  "start": {
                                                    "line": 617,
                                                    "column": 28
                                                  },
                                                  "end": {
                                                    "line": 617,
                                                    "column": 33
                                                  }
                                                },
                                                "name": "sizes"
                                              },
                                              "property": {
                                                "type": "Literal",
                                                "start": 26236,
                                                "end": 26237,
                                                "loc": {
                                                  "start": {
                                                    "line": 617,
                                                    "column": 34
                                                  },
                                                  "end": {
                                                    "line": 617,
                                                    "column": 35
                                                  }
                                                },
                                                "value": 0,
                                                "rawValue": 0,
                                                "raw": "0"
                                              },
                                              "computed": true
                                            }
                                          }
                                        ],
                                        "kind": "var"
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 26260,
                                        "end": 26289,
                                        "loc": {
                                          "start": {
                                            "line": 618,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 618,
                                            "column": 49
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 26260,
                                          "end": 26288,
                                          "loc": {
                                            "start": {
                                              "line": 618,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 618,
                                              "column": 48
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 26260,
                                            "end": 26279,
                                            "loc": {
                                              "start": {
                                                "line": 618,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 618,
                                                "column": 39
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 26260,
                                              "end": 26275,
                                              "loc": {
                                                "start": {
                                                  "line": 618,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 618,
                                                  "column": 35
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 26260,
                                                "end": 26269,
                                                "loc": {
                                                  "start": {
                                                    "line": 618,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 618,
                                                    "column": 29
                                                  }
                                                },
                                                "object": {
                                                  "type": "ThisExpression",
                                                  "start": 26260,
                                                  "end": 26264,
                                                  "loc": {
                                                    "start": {
                                                      "line": 618,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 618,
                                                      "column": 24
                                                    }
                                                  }
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 26265,
                                                  "end": 26269,
                                                  "loc": {
                                                    "start": {
                                                      "line": 618,
                                                      "column": 25
                                                    },
                                                    "end": {
                                                      "line": 618,
                                                      "column": 29
                                                    }
                                                  },
                                                  "name": "mesh"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 26270,
                                                "end": 26275,
                                                "loc": {
                                                  "start": {
                                                    "line": 618,
                                                    "column": 30
                                                  },
                                                  "end": {
                                                    "line": 618,
                                                    "column": 35
                                                  }
                                                },
                                                "name": "scale"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 26276,
                                              "end": 26279,
                                              "loc": {
                                                "start": {
                                                  "line": 618,
                                                  "column": 36
                                                },
                                                "end": {
                                                  "line": 618,
                                                  "column": 39
                                                }
                                              },
                                              "name": "set"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "Identifier",
                                              "start": 26280,
                                              "end": 26281,
                                              "loc": {
                                                "start": {
                                                  "line": 618,
                                                  "column": 40
                                                },
                                                "end": {
                                                  "line": 618,
                                                  "column": 41
                                                }
                                              },
                                              "name": "s"
                                            },
                                            {
                                              "type": "Identifier",
                                              "start": 26283,
                                              "end": 26284,
                                              "loc": {
                                                "start": {
                                                  "line": 618,
                                                  "column": 43
                                                },
                                                "end": {
                                                  "line": 618,
                                                  "column": 44
                                                }
                                              },
                                              "name": "s"
                                            },
                                            {
                                              "type": "Identifier",
                                              "start": 26286,
                                              "end": 26287,
                                              "loc": {
                                                "start": {
                                                  "line": 618,
                                                  "column": 46
                                                },
                                                "end": {
                                                  "line": 618,
                                                  "column": 47
                                                }
                                              },
                                              "name": "s"
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  }
                                },
                                "leadingComments": null
                              },
                              "leadingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "add pixel-based sizing",
                                  "start": 26124,
                                  "end": 26148,
                                  "loc": {
                                    "start": {
                                      "line": 615,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 615,
                                      "column": 40
                                    }
                                  },
                                  "range": [
                                    26124,
                                    26148
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 26325,
                              "end": 26389,
                              "loc": {
                                "start": {
                                  "line": 620,
                                  "column": 16
                                },
                                "end": {
                                  "line": 620,
                                  "column": 80
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 26325,
                                "end": 26388,
                                "loc": {
                                  "start": {
                                    "line": 620,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 620,
                                    "column": 79
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 26325,
                                  "end": 26362,
                                  "loc": {
                                    "start": {
                                      "line": 620,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 620,
                                      "column": 53
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 26325,
                                    "end": 26357,
                                    "loc": {
                                      "start": {
                                        "line": 620,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 620,
                                        "column": 48
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 26325,
                                      "end": 26333,
                                      "loc": {
                                        "start": {
                                          "line": 620,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 620,
                                          "column": 24
                                        }
                                      },
                                      "name": "Sketcher"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 26334,
                                      "end": 26357,
                                      "loc": {
                                        "start": {
                                          "line": 620,
                                          "column": 25
                                        },
                                        "end": {
                                          "line": 620,
                                          "column": 48
                                        }
                                      },
                                      "name": "mixinPixelSizedGeometry"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 26358,
                                    "end": 26362,
                                    "loc": {
                                      "start": {
                                        "line": 620,
                                        "column": 49
                                      },
                                      "end": {
                                        "line": 620,
                                        "column": 53
                                      }
                                    },
                                    "name": "call"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 26363,
                                    "end": 26366,
                                    "loc": {
                                      "start": {
                                        "line": 620,
                                        "column": 54
                                      },
                                      "end": {
                                        "line": 620,
                                        "column": 57
                                      }
                                    },
                                    "name": "obj"
                                  },
                                  {
                                    "type": "LogicalExpression",
                                    "start": 26368,
                                    "end": 26387,
                                    "loc": {
                                      "start": {
                                        "line": 620,
                                        "column": 59
                                      },
                                      "end": {
                                        "line": 620,
                                        "column": 78
                                      }
                                    },
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 26368,
                                      "end": 26381,
                                      "loc": {
                                        "start": {
                                          "line": 620,
                                          "column": 59
                                        },
                                        "end": {
                                          "line": 620,
                                          "column": 72
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 26368,
                                        "end": 26372,
                                        "loc": {
                                          "start": {
                                            "line": 620,
                                            "column": 59
                                          },
                                          "end": {
                                            "line": 620,
                                            "column": 63
                                          }
                                        },
                                        "name": "data"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 26373,
                                        "end": 26381,
                                        "loc": {
                                          "start": {
                                            "line": 620,
                                            "column": 64
                                          },
                                          "end": {
                                            "line": 620,
                                            "column": 72
                                          }
                                        },
                                        "name": "fontSize"
                                      },
                                      "computed": false
                                    },
                                    "operator": "||",
                                    "right": {
                                      "type": "Literal",
                                      "start": 26385,
                                      "end": 26387,
                                      "loc": {
                                        "start": {
                                          "line": 620,
                                          "column": 76
                                        },
                                        "end": {
                                          "line": 620,
                                          "column": 78
                                        }
                                      },
                                      "value": 12,
                                      "rawValue": 12,
                                      "raw": "12"
                                    }
                                  }
                                ]
                              },
                              "trailingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "register automatic updates",
                                  "start": 26406,
                                  "end": 26434,
                                  "loc": {
                                    "start": {
                                      "line": 621,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 621,
                                      "column": 44
                                    }
                                  },
                                  "range": [
                                    26406,
                                    26434
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "VariableDeclaration",
                              "start": 26451,
                              "end": 26489,
                              "loc": {
                                "start": {
                                  "line": 622,
                                  "column": 16
                                },
                                "end": {
                                  "line": 622,
                                  "column": 54
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 26455,
                                  "end": 26488,
                                  "loc": {
                                    "start": {
                                      "line": 622,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 622,
                                      "column": 53
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 26455,
                                    "end": 26459,
                                    "loc": {
                                      "start": {
                                        "line": 622,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 622,
                                        "column": 24
                                      }
                                    },
                                    "name": "view",
                                    "leadingComments": null
                                  },
                                  "init": {
                                    "type": "MemberExpression",
                                    "start": 26462,
                                    "end": 26488,
                                    "loc": {
                                      "start": {
                                        "line": 622,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 622,
                                        "column": 53
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 26462,
                                      "end": 26475,
                                      "loc": {
                                        "start": {
                                          "line": 622,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 622,
                                          "column": 40
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 26462,
                                        "end": 26466,
                                        "loc": {
                                          "start": {
                                            "line": 622,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 622,
                                            "column": 31
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 26467,
                                        "end": 26475,
                                        "loc": {
                                          "start": {
                                            "line": 622,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 622,
                                            "column": 40
                                          }
                                        },
                                        "name": "sketcher"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 26476,
                                      "end": 26488,
                                      "loc": {
                                        "start": {
                                          "line": 622,
                                          "column": 41
                                        },
                                        "end": {
                                          "line": 622,
                                          "column": 53
                                        }
                                      },
                                      "name": "__parentView"
                                    },
                                    "computed": false
                                  },
                                  "leadingComments": null
                                }
                              ],
                              "kind": "var",
                              "leadingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "register automatic updates",
                                  "start": 26406,
                                  "end": 26434,
                                  "loc": {
                                    "start": {
                                      "line": 621,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 621,
                                      "column": 44
                                    }
                                  },
                                  "range": [
                                    26406,
                                    26434
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 26506,
                              "end": 26548,
                              "loc": {
                                "start": {
                                  "line": 623,
                                  "column": 16
                                },
                                "end": {
                                  "line": 623,
                                  "column": 58
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 26506,
                                "end": 26547,
                                "loc": {
                                  "start": {
                                    "line": 623,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 623,
                                    "column": 57
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 26506,
                                  "end": 26536,
                                  "loc": {
                                    "start": {
                                      "line": 623,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 623,
                                      "column": 46
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 26506,
                                    "end": 26514,
                                    "loc": {
                                      "start": {
                                        "line": 623,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 623,
                                        "column": 24
                                      }
                                    },
                                    "name": "Sketcher"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 26515,
                                    "end": 26536,
                                    "loc": {
                                      "start": {
                                        "line": 623,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 623,
                                        "column": 46
                                      }
                                    },
                                    "name": "registerVisualization"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 26537,
                                    "end": 26541,
                                    "loc": {
                                      "start": {
                                        "line": 623,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 623,
                                        "column": 51
                                      }
                                    },
                                    "name": "view"
                                  },
                                  {
                                    "type": "Identifier",
                                    "start": 26543,
                                    "end": 26546,
                                    "loc": {
                                      "start": {
                                        "line": 623,
                                        "column": 53
                                      },
                                      "end": {
                                        "line": 623,
                                        "column": 56
                                      }
                                    },
                                    "name": "obj"
                                  }
                                ]
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 26566,
                              "end": 26583,
                              "loc": {
                                "start": {
                                  "line": 625,
                                  "column": 16
                                },
                                "end": {
                                  "line": 625,
                                  "column": 33
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 26566,
                                "end": 26582,
                                "loc": {
                                  "start": {
                                    "line": 625,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 625,
                                    "column": 32
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 26566,
                                  "end": 26577,
                                  "loc": {
                                    "start": {
                                      "line": 625,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 625,
                                      "column": 27
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 26566,
                                    "end": 26572,
                                    "loc": {
                                      "start": {
                                        "line": 625,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 625,
                                        "column": 22
                                      }
                                    },
                                    "name": "result"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 26573,
                                    "end": 26577,
                                    "loc": {
                                      "start": {
                                        "line": 625,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 625,
                                        "column": 27
                                      }
                                    },
                                    "name": "push"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 26578,
                                    "end": 26581,
                                    "loc": {
                                      "start": {
                                        "line": 625,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 625,
                                        "column": 31
                                      }
                                    },
                                    "name": "obj"
                                  }
                                ]
                              }
                            },
                            {
                              "type": "BreakStatement",
                              "start": 26600,
                              "end": 26606,
                              "loc": {
                                "start": {
                                  "line": 626,
                                  "column": 16
                                },
                                "end": {
                                  "line": 626,
                                  "column": 22
                                }
                              },
                              "label": null
                            }
                          ],
                          "test": {
                            "type": "Literal",
                            "start": 25149,
                            "end": 25155,
                            "loc": {
                              "start": {
                                "line": 597,
                                "column": 17
                              },
                              "end": {
                                "line": 597,
                                "column": 23
                              }
                            },
                            "value": "Text",
                            "rawValue": "Text",
                            "raw": "'Text'"
                          }
                        },
                        {
                          "type": "SwitchCase",
                          "start": 26620,
                          "end": 26827,
                          "loc": {
                            "start": {
                              "line": 628,
                              "column": 12
                            },
                            "end": {
                              "line": 632,
                              "column": 22
                            }
                          },
                          "consequent": [
                            {
                              "type": "ExpressionStatement",
                              "start": 26649,
                              "end": 26689,
                              "loc": {
                                "start": {
                                  "line": 629,
                                  "column": 16
                                },
                                "end": {
                                  "line": 629,
                                  "column": 56
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 26649,
                                "end": 26688,
                                "loc": {
                                  "start": {
                                    "line": 629,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 629,
                                    "column": 55
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 26649,
                                  "end": 26674,
                                  "loc": {
                                    "start": {
                                      "line": 629,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 629,
                                      "column": 41
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 26649,
                                    "end": 26662,
                                    "loc": {
                                      "start": {
                                        "line": 629,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 629,
                                        "column": 29
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 26649,
                                      "end": 26653,
                                      "loc": {
                                        "start": {
                                          "line": 629,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 629,
                                          "column": 20
                                        }
                                      },
                                      "name": "data"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 26654,
                                      "end": 26662,
                                      "loc": {
                                        "start": {
                                          "line": 629,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 629,
                                          "column": 29
                                        }
                                      },
                                      "name": "geometry"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 26663,
                                    "end": 26674,
                                    "loc": {
                                      "start": {
                                        "line": 629,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 629,
                                        "column": 41
                                      }
                                    },
                                    "name": "applyMatrix"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 26675,
                                    "end": 26687,
                                    "loc": {
                                      "start": {
                                        "line": 629,
                                        "column": 42
                                      },
                                      "end": {
                                        "line": 629,
                                        "column": 54
                                      }
                                    },
                                    "name": "worldToLocal"
                                  }
                                ]
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 26706,
                              "end": 26769,
                              "loc": {
                                "start": {
                                  "line": 630,
                                  "column": 16
                                },
                                "end": {
                                  "line": 630,
                                  "column": 79
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 26706,
                                "end": 26768,
                                "loc": {
                                  "start": {
                                    "line": 630,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 630,
                                    "column": 78
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 26706,
                                  "end": 26719,
                                  "loc": {
                                    "start": {
                                      "line": 630,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 630,
                                      "column": 29
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 26706,
                                    "end": 26710,
                                    "loc": {
                                      "start": {
                                        "line": 630,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 630,
                                        "column": 20
                                      }
                                    },
                                    "name": "data"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 26711,
                                    "end": 26719,
                                    "loc": {
                                      "start": {
                                        "line": 630,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 630,
                                        "column": 29
                                      }
                                    },
                                    "name": "material"
                                  },
                                  "computed": false
                                },
                                "right": {
                                  "type": "NewExpression",
                                  "start": 26722,
                                  "end": 26768,
                                  "loc": {
                                    "start": {
                                      "line": 630,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 630,
                                      "column": 78
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 26726,
                                    "end": 26749,
                                    "loc": {
                                      "start": {
                                        "line": 630,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 630,
                                        "column": 59
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 26726,
                                      "end": 26731,
                                      "loc": {
                                        "start": {
                                          "line": 630,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 630,
                                          "column": 41
                                        }
                                      },
                                      "name": "THREE"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 26732,
                                      "end": 26749,
                                      "loc": {
                                        "start": {
                                          "line": 630,
                                          "column": 42
                                        },
                                        "end": {
                                          "line": 630,
                                          "column": 59
                                        }
                                      },
                                      "name": "MeshBasicMaterial"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "ObjectExpression",
                                      "start": 26750,
                                      "end": 26767,
                                      "loc": {
                                        "start": {
                                          "line": 630,
                                          "column": 60
                                        },
                                        "end": {
                                          "line": 630,
                                          "column": 77
                                        }
                                      },
                                      "properties": [
                                        {
                                          "type": "Property",
                                          "start": 26751,
                                          "end": 26766,
                                          "loc": {
                                            "start": {
                                              "line": 630,
                                              "column": 61
                                            },
                                            "end": {
                                              "line": 630,
                                              "column": 76
                                            }
                                          },
                                          "method": false,
                                          "shorthand": false,
                                          "computed": false,
                                          "key": {
                                            "type": "Identifier",
                                            "start": 26751,
                                            "end": 26756,
                                            "loc": {
                                              "start": {
                                                "line": 630,
                                                "column": 61
                                              },
                                              "end": {
                                                "line": 630,
                                                "column": 66
                                              }
                                            },
                                            "name": "color"
                                          },
                                          "value": {
                                            "type": "Literal",
                                            "start": 26758,
                                            "end": 26766,
                                            "loc": {
                                              "start": {
                                                "line": 630,
                                                "column": 68
                                              },
                                              "end": {
                                                "line": 630,
                                                "column": 76
                                              }
                                            },
                                            "value": 8388479,
                                            "rawValue": 8388479,
                                            "raw": "0x7fff7f"
                                          },
                                          "kind": "init"
                                        }
                                      ]
                                    }
                                  ]
                                }
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 26786,
                              "end": 26804,
                              "loc": {
                                "start": {
                                  "line": 631,
                                  "column": 16
                                },
                                "end": {
                                  "line": 631,
                                  "column": 34
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 26786,
                                "end": 26803,
                                "loc": {
                                  "start": {
                                    "line": 631,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 631,
                                    "column": 33
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 26786,
                                  "end": 26797,
                                  "loc": {
                                    "start": {
                                      "line": 631,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 631,
                                      "column": 27
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 26786,
                                    "end": 26792,
                                    "loc": {
                                      "start": {
                                        "line": 631,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 631,
                                        "column": 22
                                      }
                                    },
                                    "name": "result"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 26793,
                                    "end": 26797,
                                    "loc": {
                                      "start": {
                                        "line": 631,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 631,
                                        "column": 27
                                      }
                                    },
                                    "name": "push"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 26798,
                                    "end": 26802,
                                    "loc": {
                                      "start": {
                                        "line": 631,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 631,
                                        "column": 32
                                      }
                                    },
                                    "name": "data"
                                  }
                                ]
                              }
                            },
                            {
                              "type": "BreakStatement",
                              "start": 26821,
                              "end": 26827,
                              "loc": {
                                "start": {
                                  "line": 632,
                                  "column": 16
                                },
                                "end": {
                                  "line": 632,
                                  "column": 22
                                }
                              },
                              "label": null
                            }
                          ],
                          "test": {
                            "type": "Literal",
                            "start": 26625,
                            "end": 26631,
                            "loc": {
                              "start": {
                                "line": 628,
                                "column": 17
                              },
                              "end": {
                                "line": 628,
                                "column": 23
                              }
                            },
                            "value": "Line",
                            "rawValue": "Line",
                            "raw": "'Line'"
                          }
                        }
                      ]
                    }
                  ]
                }
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " intercept graphical objects created on the server",
                  "start": 23635,
                  "end": 23687,
                  "loc": {
                    "start": {
                      "line": 563,
                      "column": 4
                    },
                    "end": {
                      "line": 563,
                      "column": 56
                    }
                  },
                  "range": [
                    23635,
                    23687
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 26849,
              "end": 27123,
              "loc": {
                "start": {
                  "line": 636,
                  "column": 4
                },
                "end": {
                  "line": 644,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 26849,
                "end": 26864,
                "loc": {
                  "start": {
                    "line": 636,
                    "column": 4
                  },
                  "end": {
                    "line": 636,
                    "column": 19
                  }
                },
                "name": "showConstraints"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 26864,
                "end": 27123,
                "loc": {
                  "start": {
                    "line": 636,
                    "column": 19
                  },
                  "end": {
                    "line": 644,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 26865,
                    "end": 26868,
                    "loc": {
                      "start": {
                        "line": 636,
                        "column": 20
                      },
                      "end": {
                        "line": 636,
                        "column": 23
                      }
                    },
                    "name": "obj"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 26870,
                  "end": 27123,
                  "loc": {
                    "start": {
                      "line": 636,
                      "column": 25
                    },
                    "end": {
                      "line": 644,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 26880,
                      "end": 26931,
                      "loc": {
                        "start": {
                          "line": 637,
                          "column": 8
                        },
                        "end": {
                          "line": 637,
                          "column": 59
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 26884,
                          "end": 26930,
                          "loc": {
                            "start": {
                              "line": 637,
                              "column": 12
                            },
                            "end": {
                              "line": 637,
                              "column": 58
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 26884,
                            "end": 26895,
                            "loc": {
                              "start": {
                                "line": 637,
                                "column": 12
                              },
                              "end": {
                                "line": 637,
                                "column": 23
                              }
                            },
                            "name": "constraints"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 26898,
                            "end": 26930,
                            "loc": {
                              "start": {
                                "line": 637,
                                "column": 26
                              },
                              "end": {
                                "line": 637,
                                "column": 58
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 26898,
                              "end": 26925,
                              "loc": {
                                "start": {
                                  "line": 637,
                                  "column": 26
                                },
                                "end": {
                                  "line": 637,
                                  "column": 53
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 26898,
                                "end": 26902,
                                "loc": {
                                  "start": {
                                    "line": 637,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 637,
                                    "column": 30
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 26903,
                                "end": 26925,
                                "loc": {
                                  "start": {
                                    "line": 637,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 637,
                                    "column": 53
                                  }
                                },
                                "name": "getConstraintsOnSketch"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 26926,
                                "end": 26929,
                                "loc": {
                                  "start": {
                                    "line": 637,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 637,
                                    "column": 57
                                  }
                                },
                                "name": "obj"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 26940,
                      "end": 26977,
                      "loc": {
                        "start": {
                          "line": 638,
                          "column": 8
                        },
                        "end": {
                          "line": 638,
                          "column": 45
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 26944,
                        "end": 26968,
                        "loc": {
                          "start": {
                            "line": 638,
                            "column": 12
                          },
                          "end": {
                            "line": 638,
                            "column": 36
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 26944,
                          "end": 26962,
                          "loc": {
                            "start": {
                              "line": 638,
                              "column": 12
                            },
                            "end": {
                              "line": 638,
                              "column": 30
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 26944,
                            "end": 26955,
                            "loc": {
                              "start": {
                                "line": 638,
                                "column": 12
                              },
                              "end": {
                                "line": 638,
                                "column": 23
                              }
                            },
                            "name": "constraints"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 26956,
                            "end": 26962,
                            "loc": {
                              "start": {
                                "line": 638,
                                "column": 24
                              },
                              "end": {
                                "line": 638,
                                "column": 30
                              }
                            },
                            "name": "length"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Literal",
                          "start": 26967,
                          "end": 26968,
                          "loc": {
                            "start": {
                              "line": 638,
                              "column": 35
                            },
                            "end": {
                              "line": 638,
                              "column": 36
                            }
                          },
                          "value": 0,
                          "rawValue": 0,
                          "raw": "0"
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 26970,
                        "end": 26977,
                        "loc": {
                          "start": {
                            "line": 638,
                            "column": 38
                          },
                          "end": {
                            "line": 638,
                            "column": 45
                          }
                        },
                        "argument": null
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 26987,
                      "end": 27027,
                      "loc": {
                        "start": {
                          "line": 640,
                          "column": 8
                        },
                        "end": {
                          "line": 640,
                          "column": 48
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 26987,
                        "end": 27026,
                        "loc": {
                          "start": {
                            "line": 640,
                            "column": 8
                          },
                          "end": {
                            "line": 640,
                            "column": 47
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 26987,
                          "end": 27019,
                          "loc": {
                            "start": {
                              "line": 640,
                              "column": 8
                            },
                            "end": {
                              "line": 640,
                              "column": 40
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 26987,
                            "end": 27011,
                            "loc": {
                              "start": {
                                "line": 640,
                                "column": 8
                              },
                              "end": {
                                "line": 640,
                                "column": 32
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 26987,
                              "end": 26990,
                              "loc": {
                                "start": {
                                  "line": 640,
                                  "column": 8
                                },
                                "end": {
                                  "line": 640,
                                  "column": 11
                                }
                              },
                              "name": "obj"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 26991,
                              "end": 27011,
                              "loc": {
                                "start": {
                                  "line": 640,
                                  "column": 12
                                },
                                "end": {
                                  "line": 640,
                                  "column": 32
                                }
                              },
                              "name": "constraintsSubstrate"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 27012,
                            "end": 27019,
                            "loc": {
                              "start": {
                                "line": 640,
                                "column": 33
                              },
                              "end": {
                                "line": 640,
                                "column": 40
                              }
                            },
                            "name": "visible"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 27022,
                          "end": 27026,
                          "loc": {
                            "start": {
                              "line": 640,
                              "column": 43
                            },
                            "end": {
                              "line": 640,
                              "column": 47
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 27037,
                      "end": 27065,
                      "loc": {
                        "start": {
                          "line": 642,
                          "column": 8
                        },
                        "end": {
                          "line": 642,
                          "column": 36
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 27037,
                        "end": 27064,
                        "loc": {
                          "start": {
                            "line": 642,
                            "column": 8
                          },
                          "end": {
                            "line": 642,
                            "column": 35
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 27037,
                          "end": 27059,
                          "loc": {
                            "start": {
                              "line": 642,
                              "column": 8
                            },
                            "end": {
                              "line": 642,
                              "column": 30
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 27037,
                            "end": 27041,
                            "loc": {
                              "start": {
                                "line": 642,
                                "column": 8
                              },
                              "end": {
                                "line": 642,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 27042,
                            "end": 27059,
                            "loc": {
                              "start": {
                                "line": 642,
                                "column": 13
                              },
                              "end": {
                                "line": 642,
                                "column": 30
                              }
                            },
                            "name": "updateConstraints"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 27060,
                            "end": 27063,
                            "loc": {
                              "start": {
                                "line": 642,
                                "column": 31
                              },
                              "end": {
                                "line": 642,
                                "column": 34
                              }
                            },
                            "name": "obj"
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 27074,
                      "end": 27117,
                      "loc": {
                        "start": {
                          "line": 643,
                          "column": 8
                        },
                        "end": {
                          "line": 643,
                          "column": 51
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 27074,
                        "end": 27116,
                        "loc": {
                          "start": {
                            "line": 643,
                            "column": 8
                          },
                          "end": {
                            "line": 643,
                            "column": 50
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 27074,
                          "end": 27093,
                          "loc": {
                            "start": {
                              "line": 643,
                              "column": 8
                            },
                            "end": {
                              "line": 643,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 27074,
                            "end": 27085,
                            "loc": {
                              "start": {
                                "line": 643,
                                "column": 8
                              },
                              "end": {
                                "line": 643,
                                "column": 19
                              }
                            },
                            "name": "constraints"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 27086,
                            "end": 27093,
                            "loc": {
                              "start": {
                                "line": 643,
                                "column": 20
                              },
                              "end": {
                                "line": 643,
                                "column": 27
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 27094,
                            "end": 27115,
                            "loc": {
                              "start": {
                                "line": 643,
                                "column": 28
                              },
                              "end": {
                                "line": 643,
                                "column": 49
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": true,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 27094,
                                "end": 27099,
                                "loc": {
                                  "start": {
                                    "line": 643,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 643,
                                    "column": 33
                                  }
                                },
                                "name": "child"
                              }
                            ],
                            "body": {
                              "type": "CallExpression",
                              "start": 27103,
                              "end": 27115,
                              "loc": {
                                "start": {
                                  "line": 643,
                                  "column": 37
                                },
                                "end": {
                                  "line": 643,
                                  "column": 49
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 27103,
                                "end": 27113,
                                "loc": {
                                  "start": {
                                    "line": 643,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 643,
                                    "column": 47
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 27103,
                                  "end": 27108,
                                  "loc": {
                                    "start": {
                                      "line": 643,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 643,
                                      "column": 42
                                    }
                                  },
                                  "name": "child"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 27109,
                                  "end": 27113,
                                  "loc": {
                                    "start": {
                                      "line": 643,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 643,
                                      "column": 47
                                    }
                                  },
                                  "name": "show"
                                },
                                "computed": false
                              },
                              "arguments": []
                            }
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 27129,
              "end": 27605,
              "loc": {
                "start": {
                  "line": 646,
                  "column": 4
                },
                "end": {
                  "line": 661,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 27129,
                "end": 27144,
                "loc": {
                  "start": {
                    "line": 646,
                    "column": 4
                  },
                  "end": {
                    "line": 646,
                    "column": 19
                  }
                },
                "name": "hideConstraints"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 27144,
                "end": 27605,
                "loc": {
                  "start": {
                    "line": 646,
                    "column": 19
                  },
                  "end": {
                    "line": 661,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 27147,
                  "end": 27605,
                  "loc": {
                    "start": {
                      "line": 646,
                      "column": 22
                    },
                    "end": {
                      "line": 661,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 27157,
                      "end": 27205,
                      "loc": {
                        "start": {
                          "line": 647,
                          "column": 8
                        },
                        "end": {
                          "line": 647,
                          "column": 56
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 27161,
                          "end": 27204,
                          "loc": {
                            "start": {
                              "line": 647,
                              "column": 12
                            },
                            "end": {
                              "line": 647,
                              "column": 55
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 27161,
                            "end": 27172,
                            "loc": {
                              "start": {
                                "line": 647,
                                "column": 12
                              },
                              "end": {
                                "line": 647,
                                "column": 23
                              }
                            },
                            "name": "constraints"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 27175,
                            "end": 27204,
                            "loc": {
                              "start": {
                                "line": 647,
                                "column": 26
                              },
                              "end": {
                                "line": 647,
                                "column": 55
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 27175,
                              "end": 27202,
                              "loc": {
                                "start": {
                                  "line": 647,
                                  "column": 26
                                },
                                "end": {
                                  "line": 647,
                                  "column": 53
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 27175,
                                "end": 27179,
                                "loc": {
                                  "start": {
                                    "line": 647,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 647,
                                    "column": 30
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 27180,
                                "end": 27202,
                                "loc": {
                                  "start": {
                                    "line": 647,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 647,
                                    "column": 53
                                  }
                                },
                                "name": "getConstraintsOnSketch"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 27215,
                      "end": 27348,
                      "loc": {
                        "start": {
                          "line": 649,
                          "column": 8
                        },
                        "end": {
                          "line": 652,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 27215,
                        "end": 27347,
                        "loc": {
                          "start": {
                            "line": 649,
                            "column": 8
                          },
                          "end": {
                            "line": 652,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 27215,
                          "end": 27234,
                          "loc": {
                            "start": {
                              "line": 649,
                              "column": 8
                            },
                            "end": {
                              "line": 649,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 27215,
                            "end": 27226,
                            "loc": {
                              "start": {
                                "line": 649,
                                "column": 8
                              },
                              "end": {
                                "line": 649,
                                "column": 19
                              }
                            },
                            "name": "constraints"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 27227,
                            "end": 27234,
                            "loc": {
                              "start": {
                                "line": 649,
                                "column": 20
                              },
                              "end": {
                                "line": 649,
                                "column": 27
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 27235,
                            "end": 27346,
                            "loc": {
                              "start": {
                                "line": 649,
                                "column": 28
                              },
                              "end": {
                                "line": 652,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 27235,
                                "end": 27240,
                                "loc": {
                                  "start": {
                                    "line": 649,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 649,
                                    "column": 33
                                  }
                                },
                                "name": "child"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 27244,
                              "end": 27346,
                              "loc": {
                                "start": {
                                  "line": 649,
                                  "column": 37
                                },
                                "end": {
                                  "line": 652,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 27258,
                                  "end": 27310,
                                  "loc": {
                                    "start": {
                                      "line": 650,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 650,
                                      "column": 64
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 27258,
                                    "end": 27309,
                                    "loc": {
                                      "start": {
                                        "line": 650,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 650,
                                        "column": 63
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 27258,
                                      "end": 27276,
                                      "loc": {
                                        "start": {
                                          "line": 650,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 650,
                                          "column": 30
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 27258,
                                        "end": 27268,
                                        "loc": {
                                          "start": {
                                            "line": 650,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 650,
                                            "column": 22
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 27258,
                                          "end": 27263,
                                          "loc": {
                                            "start": {
                                              "line": 650,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 650,
                                              "column": 17
                                            }
                                          },
                                          "name": "child"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 27264,
                                          "end": 27268,
                                          "loc": {
                                            "start": {
                                              "line": 650,
                                              "column": 18
                                            },
                                            "end": {
                                              "line": 650,
                                              "column": 22
                                            }
                                          },
                                          "name": "args"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 27269,
                                        "end": 27276,
                                        "loc": {
                                          "start": {
                                            "line": 650,
                                            "column": 23
                                          },
                                          "end": {
                                            "line": 650,
                                            "column": 30
                                          }
                                        },
                                        "name": "forEach"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "ArrowFunctionExpression",
                                        "start": 27277,
                                        "end": 27308,
                                        "loc": {
                                          "start": {
                                            "line": 650,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 650,
                                            "column": 62
                                          }
                                        },
                                        "id": null,
                                        "generator": false,
                                        "expression": false,
                                        "async": false,
                                        "params": [
                                          {
                                            "type": "Identifier",
                                            "start": 27277,
                                            "end": 27280,
                                            "loc": {
                                              "start": {
                                                "line": 650,
                                                "column": 31
                                              },
                                              "end": {
                                                "line": 650,
                                                "column": 34
                                              }
                                            },
                                            "name": "arg"
                                          }
                                        ],
                                        "body": {
                                          "type": "BlockStatement",
                                          "start": 27284,
                                          "end": 27308,
                                          "loc": {
                                            "start": {
                                              "line": 650,
                                              "column": 38
                                            },
                                            "end": {
                                              "line": 650,
                                              "column": 62
                                            }
                                          },
                                          "body": [
                                            {
                                              "type": "ExpressionStatement",
                                              "start": 27286,
                                              "end": 27306,
                                              "loc": {
                                                "start": {
                                                  "line": 650,
                                                  "column": 40
                                                },
                                                "end": {
                                                  "line": 650,
                                                  "column": 60
                                                }
                                              },
                                              "expression": {
                                                "type": "AssignmentExpression",
                                                "start": 27286,
                                                "end": 27305,
                                                "loc": {
                                                  "start": {
                                                    "line": 650,
                                                    "column": 40
                                                  },
                                                  "end": {
                                                    "line": 650,
                                                    "column": 59
                                                  }
                                                },
                                                "operator": "=",
                                                "left": {
                                                  "type": "MemberExpression",
                                                  "start": 27286,
                                                  "end": 27297,
                                                  "loc": {
                                                    "start": {
                                                      "line": 650,
                                                      "column": 40
                                                    },
                                                    "end": {
                                                      "line": 650,
                                                      "column": 51
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 27286,
                                                    "end": 27289,
                                                    "loc": {
                                                      "start": {
                                                        "line": 650,
                                                        "column": 40
                                                      },
                                                      "end": {
                                                        "line": 650,
                                                        "column": 43
                                                      }
                                                    },
                                                    "name": "arg"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 27290,
                                                    "end": 27297,
                                                    "loc": {
                                                      "start": {
                                                        "line": 650,
                                                        "column": 44
                                                      },
                                                      "end": {
                                                        "line": 650,
                                                        "column": 51
                                                      }
                                                    },
                                                    "name": "hovered"
                                                  },
                                                  "computed": false
                                                },
                                                "right": {
                                                  "type": "Literal",
                                                  "start": 27300,
                                                  "end": 27305,
                                                  "loc": {
                                                    "start": {
                                                      "line": 650,
                                                      "column": 54
                                                    },
                                                    "end": {
                                                      "line": 650,
                                                      "column": 59
                                                    }
                                                  },
                                                  "value": false,
                                                  "rawValue": false,
                                                  "raw": "false"
                                                }
                                              }
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 27323,
                                  "end": 27336,
                                  "loc": {
                                    "start": {
                                      "line": 651,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 651,
                                      "column": 25
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 27323,
                                    "end": 27335,
                                    "loc": {
                                      "start": {
                                        "line": 651,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 651,
                                        "column": 24
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 27323,
                                      "end": 27333,
                                      "loc": {
                                        "start": {
                                          "line": 651,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 651,
                                          "column": 22
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 27323,
                                        "end": 27328,
                                        "loc": {
                                          "start": {
                                            "line": 651,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 651,
                                            "column": 17
                                          }
                                        },
                                        "name": "child"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 27329,
                                        "end": 27333,
                                        "loc": {
                                          "start": {
                                            "line": 651,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 651,
                                            "column": 22
                                          }
                                        },
                                        "name": "hide"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 27358,
                      "end": 27599,
                      "loc": {
                        "start": {
                          "line": 654,
                          "column": 8
                        },
                        "end": {
                          "line": 660,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 27358,
                        "end": 27598,
                        "loc": {
                          "start": {
                            "line": 654,
                            "column": 8
                          },
                          "end": {
                            "line": 660,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 27358,
                          "end": 27391,
                          "loc": {
                            "start": {
                              "line": 654,
                              "column": 8
                            },
                            "end": {
                              "line": 654,
                              "column": 41
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 27358,
                            "end": 27383,
                            "loc": {
                              "start": {
                                "line": 654,
                                "column": 8
                              },
                              "end": {
                                "line": 654,
                                "column": 33
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 27358,
                              "end": 27381,
                              "loc": {
                                "start": {
                                  "line": 654,
                                  "column": 8
                                },
                                "end": {
                                  "line": 654,
                                  "column": 31
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 27358,
                                "end": 27362,
                                "loc": {
                                  "start": {
                                    "line": 654,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 654,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 27363,
                                "end": 27381,
                                "loc": {
                                  "start": {
                                    "line": 654,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 654,
                                    "column": 31
                                  }
                                },
                                "name": "getObjectsOnSketch"
                              },
                              "computed": false
                            },
                            "arguments": []
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 27384,
                            "end": 27391,
                            "loc": {
                              "start": {
                                "line": 654,
                                "column": 34
                              },
                              "end": {
                                "line": 654,
                                "column": 41
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 27392,
                            "end": 27597,
                            "loc": {
                              "start": {
                                "line": 654,
                                "column": 42
                              },
                              "end": {
                                "line": 660,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 27392,
                                "end": 27395,
                                "loc": {
                                  "start": {
                                    "line": 654,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 654,
                                    "column": 45
                                  }
                                },
                                "name": "obj"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 27399,
                              "end": 27597,
                              "loc": {
                                "start": {
                                  "line": 654,
                                  "column": 49
                                },
                                "end": {
                                  "line": 660,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 27413,
                                  "end": 27586,
                                  "loc": {
                                    "start": {
                                      "line": 655,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 658,
                                      "column": 15
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 27413,
                                    "end": 27585,
                                    "loc": {
                                      "start": {
                                        "line": 655,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 658,
                                        "column": 14
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 27413,
                                      "end": 27442,
                                      "loc": {
                                        "start": {
                                          "line": 655,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 655,
                                          "column": 41
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 27413,
                                        "end": 27419,
                                        "loc": {
                                          "start": {
                                            "line": 655,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 655,
                                            "column": 18
                                          }
                                        },
                                        "name": "Sketch"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 27420,
                                        "end": 27442,
                                        "loc": {
                                          "start": {
                                            "line": 655,
                                            "column": 19
                                          },
                                          "end": {
                                            "line": 655,
                                            "column": 41
                                          }
                                        },
                                        "name": "ForObjectsWithChildren"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 27443,
                                        "end": 27446,
                                        "loc": {
                                          "start": {
                                            "line": 655,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 655,
                                            "column": 45
                                          }
                                        },
                                        "name": "obj"
                                      },
                                      {
                                        "type": "FunctionExpression",
                                        "start": 27448,
                                        "end": 27584,
                                        "loc": {
                                          "start": {
                                            "line": 655,
                                            "column": 47
                                          },
                                          "end": {
                                            "line": 658,
                                            "column": 13
                                          }
                                        },
                                        "id": null,
                                        "generator": false,
                                        "expression": false,
                                        "async": false,
                                        "params": [
                                          {
                                            "type": "Identifier",
                                            "start": 27457,
                                            "end": 27460,
                                            "loc": {
                                              "start": {
                                                "line": 655,
                                                "column": 56
                                              },
                                              "end": {
                                                "line": 655,
                                                "column": 59
                                              }
                                            },
                                            "name": "arg"
                                          }
                                        ],
                                        "body": {
                                          "type": "BlockStatement",
                                          "start": 27461,
                                          "end": 27584,
                                          "loc": {
                                            "start": {
                                              "line": 655,
                                              "column": 60
                                            },
                                            "end": {
                                              "line": 658,
                                              "column": 13
                                            }
                                          },
                                          "body": [
                                            {
                                              "type": "IfStatement",
                                              "start": 27479,
                                              "end": 27570,
                                              "loc": {
                                                "start": {
                                                  "line": 656,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 657,
                                                  "column": 61
                                                }
                                              },
                                              "test": {
                                                "type": "MemberExpression",
                                                "start": 27483,
                                                "end": 27507,
                                                "loc": {
                                                  "start": {
                                                    "line": 656,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 656,
                                                    "column": 44
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 27483,
                                                  "end": 27486,
                                                  "loc": {
                                                    "start": {
                                                      "line": 656,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 656,
                                                      "column": 23
                                                    }
                                                  },
                                                  "name": "arg"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 27487,
                                                  "end": 27507,
                                                  "loc": {
                                                    "start": {
                                                      "line": 656,
                                                      "column": 24
                                                    },
                                                    "end": {
                                                      "line": 656,
                                                      "column": 44
                                                    }
                                                  },
                                                  "name": "constraintsSubstrate"
                                                },
                                                "computed": false
                                              },
                                              "consequent": {
                                                "type": "ExpressionStatement",
                                                "start": 27529,
                                                "end": 27570,
                                                "loc": {
                                                  "start": {
                                                    "line": 657,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 657,
                                                    "column": 61
                                                  }
                                                },
                                                "expression": {
                                                  "type": "AssignmentExpression",
                                                  "start": 27529,
                                                  "end": 27569,
                                                  "loc": {
                                                    "start": {
                                                      "line": 657,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 657,
                                                      "column": 60
                                                    }
                                                  },
                                                  "operator": "=",
                                                  "left": {
                                                    "type": "MemberExpression",
                                                    "start": 27529,
                                                    "end": 27561,
                                                    "loc": {
                                                      "start": {
                                                        "line": 657,
                                                        "column": 20
                                                      },
                                                      "end": {
                                                        "line": 657,
                                                        "column": 52
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "MemberExpression",
                                                      "start": 27529,
                                                      "end": 27553,
                                                      "loc": {
                                                        "start": {
                                                          "line": 657,
                                                          "column": 20
                                                        },
                                                        "end": {
                                                          "line": 657,
                                                          "column": 44
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "Identifier",
                                                        "start": 27529,
                                                        "end": 27532,
                                                        "loc": {
                                                          "start": {
                                                            "line": 657,
                                                            "column": 20
                                                          },
                                                          "end": {
                                                            "line": 657,
                                                            "column": 23
                                                          }
                                                        },
                                                        "name": "arg"
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 27533,
                                                        "end": 27553,
                                                        "loc": {
                                                          "start": {
                                                            "line": 657,
                                                            "column": 24
                                                          },
                                                          "end": {
                                                            "line": 657,
                                                            "column": 44
                                                          }
                                                        },
                                                        "name": "constraintsSubstrate"
                                                      },
                                                      "computed": false
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 27554,
                                                      "end": 27561,
                                                      "loc": {
                                                        "start": {
                                                          "line": 657,
                                                          "column": 45
                                                        },
                                                        "end": {
                                                          "line": 657,
                                                          "column": 52
                                                        }
                                                      },
                                                      "name": "visible"
                                                    },
                                                    "computed": false
                                                  },
                                                  "right": {
                                                    "type": "Literal",
                                                    "start": 27564,
                                                    "end": 27569,
                                                    "loc": {
                                                      "start": {
                                                        "line": 657,
                                                        "column": 55
                                                      },
                                                      "end": {
                                                        "line": 657,
                                                        "column": 60
                                                      }
                                                    },
                                                    "value": false,
                                                    "rawValue": false,
                                                    "raw": "false"
                                                  }
                                                }
                                              },
                                              "alternate": null
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  }
                                }
                              ]
                            }
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 27611,
              "end": 28539,
              "loc": {
                "start": {
                  "line": 663,
                  "column": 4
                },
                "end": {
                  "line": 684,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 27611,
                "end": 27628,
                "loc": {
                  "start": {
                    "line": 663,
                    "column": 4
                  },
                  "end": {
                    "line": 663,
                    "column": 21
                  }
                },
                "name": "updateConstraints"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 27628,
                "end": 28539,
                "loc": {
                  "start": {
                    "line": 663,
                    "column": 21
                  },
                  "end": {
                    "line": 684,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 27629,
                    "end": 27632,
                    "loc": {
                      "start": {
                        "line": 663,
                        "column": 22
                      },
                      "end": {
                        "line": 663,
                        "column": 25
                      }
                    },
                    "name": "obj"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 27634,
                  "end": 28539,
                  "loc": {
                    "start": {
                      "line": 663,
                      "column": 27
                    },
                    "end": {
                      "line": 684,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 27644,
                      "end": 27685,
                      "loc": {
                        "start": {
                          "line": 664,
                          "column": 8
                        },
                        "end": {
                          "line": 664,
                          "column": 49
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 27648,
                          "end": 27684,
                          "loc": {
                            "start": {
                              "line": 664,
                              "column": 12
                            },
                            "end": {
                              "line": 664,
                              "column": 48
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 27648,
                            "end": 27657,
                            "loc": {
                              "start": {
                                "line": 664,
                                "column": 12
                              },
                              "end": {
                                "line": 664,
                                "column": 21
                              }
                            },
                            "name": "substrate"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 27660,
                            "end": 27684,
                            "loc": {
                              "start": {
                                "line": 664,
                                "column": 24
                              },
                              "end": {
                                "line": 664,
                                "column": 48
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 27660,
                              "end": 27663,
                              "loc": {
                                "start": {
                                  "line": 664,
                                  "column": 24
                                },
                                "end": {
                                  "line": 664,
                                  "column": 27
                                }
                              },
                              "name": "obj"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 27664,
                              "end": 27684,
                              "loc": {
                                "start": {
                                  "line": 664,
                                  "column": 28
                                },
                                "end": {
                                  "line": 664,
                                  "column": 48
                                }
                              },
                              "name": "constraintsSubstrate"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 27694,
                      "end": 27745,
                      "loc": {
                        "start": {
                          "line": 665,
                          "column": 8
                        },
                        "end": {
                          "line": 665,
                          "column": 59
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 27698,
                          "end": 27744,
                          "loc": {
                            "start": {
                              "line": 665,
                              "column": 12
                            },
                            "end": {
                              "line": 665,
                              "column": 58
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 27698,
                            "end": 27709,
                            "loc": {
                              "start": {
                                "line": 665,
                                "column": 12
                              },
                              "end": {
                                "line": 665,
                                "column": 23
                              }
                            },
                            "name": "constraints"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 27712,
                            "end": 27744,
                            "loc": {
                              "start": {
                                "line": 665,
                                "column": 26
                              },
                              "end": {
                                "line": 665,
                                "column": 58
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 27712,
                              "end": 27739,
                              "loc": {
                                "start": {
                                  "line": 665,
                                  "column": 26
                                },
                                "end": {
                                  "line": 665,
                                  "column": 53
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 27712,
                                "end": 27716,
                                "loc": {
                                  "start": {
                                    "line": 665,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 665,
                                    "column": 30
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 27717,
                                "end": 27739,
                                "loc": {
                                  "start": {
                                    "line": 665,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 665,
                                    "column": 53
                                  }
                                },
                                "name": "getConstraintsOnSketch"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 27740,
                                "end": 27743,
                                "loc": {
                                  "start": {
                                    "line": 665,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 665,
                                    "column": 57
                                  }
                                },
                                "name": "obj"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 27755,
                      "end": 27932,
                      "loc": {
                        "start": {
                          "line": 667,
                          "column": 8
                        },
                        "end": {
                          "line": 671,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 27759,
                        "end": 27783,
                        "loc": {
                          "start": {
                            "line": 667,
                            "column": 12
                          },
                          "end": {
                            "line": 667,
                            "column": 36
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 27759,
                          "end": 27777,
                          "loc": {
                            "start": {
                              "line": 667,
                              "column": 12
                            },
                            "end": {
                              "line": 667,
                              "column": 30
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 27759,
                            "end": 27770,
                            "loc": {
                              "start": {
                                "line": 667,
                                "column": 12
                              },
                              "end": {
                                "line": 667,
                                "column": 23
                              }
                            },
                            "name": "constraints"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 27771,
                            "end": 27777,
                            "loc": {
                              "start": {
                                "line": 667,
                                "column": 24
                              },
                              "end": {
                                "line": 667,
                                "column": 30
                              }
                            },
                            "name": "length"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Literal",
                          "start": 27782,
                          "end": 27783,
                          "loc": {
                            "start": {
                              "line": 667,
                              "column": 35
                            },
                            "end": {
                              "line": 667,
                              "column": 36
                            }
                          },
                          "value": 0,
                          "rawValue": 0,
                          "raw": "0"
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 27785,
                        "end": 27932,
                        "loc": {
                          "start": {
                            "line": 667,
                            "column": 38
                          },
                          "end": {
                            "line": 671,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 27799,
                            "end": 27840,
                            "loc": {
                              "start": {
                                "line": 668,
                                "column": 12
                              },
                              "end": {
                                "line": 668,
                                "column": 53
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 27799,
                              "end": 27839,
                              "loc": {
                                "start": {
                                  "line": 668,
                                  "column": 12
                                },
                                "end": {
                                  "line": 668,
                                  "column": 52
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 27799,
                                "end": 27831,
                                "loc": {
                                  "start": {
                                    "line": 668,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 668,
                                    "column": 44
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 27799,
                                  "end": 27823,
                                  "loc": {
                                    "start": {
                                      "line": 668,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 668,
                                      "column": 36
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 27799,
                                    "end": 27802,
                                    "loc": {
                                      "start": {
                                        "line": 668,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 668,
                                        "column": 15
                                      }
                                    },
                                    "name": "obj"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 27803,
                                    "end": 27823,
                                    "loc": {
                                      "start": {
                                        "line": 668,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 668,
                                        "column": 36
                                      }
                                    },
                                    "name": "constraintsSubstrate"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 27824,
                                  "end": 27831,
                                  "loc": {
                                    "start": {
                                      "line": 668,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 668,
                                      "column": 44
                                    }
                                  },
                                  "name": "visible"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "Literal",
                                "start": 27834,
                                "end": 27839,
                                "loc": {
                                  "start": {
                                    "line": 668,
                                    "column": 47
                                  },
                                  "end": {
                                    "line": 668,
                                    "column": 52
                                  }
                                },
                                "value": false,
                                "rawValue": false,
                                "raw": "false"
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 27853,
                            "end": 27900,
                            "loc": {
                              "start": {
                                "line": 669,
                                "column": 12
                              },
                              "end": {
                                "line": 669,
                                "column": 59
                              }
                            },
                            "expression": {
                              "type": "LogicalExpression",
                              "start": 27853,
                              "end": 27899,
                              "loc": {
                                "start": {
                                  "line": 669,
                                  "column": 12
                                },
                                "end": {
                                  "line": 669,
                                  "column": 58
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 27853,
                                "end": 27873,
                                "loc": {
                                  "start": {
                                    "line": 669,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 669,
                                    "column": 32
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 27853,
                                  "end": 27865,
                                  "loc": {
                                    "start": {
                                      "line": 669,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 669,
                                      "column": 24
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 27853,
                                    "end": 27856,
                                    "loc": {
                                      "start": {
                                        "line": 669,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 669,
                                        "column": 15
                                      }
                                    },
                                    "name": "obj"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 27857,
                                    "end": 27865,
                                    "loc": {
                                      "start": {
                                        "line": 669,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 669,
                                        "column": 24
                                      }
                                    },
                                    "name": "interact"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 27866,
                                  "end": 27873,
                                  "loc": {
                                    "start": {
                                      "line": 669,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 669,
                                      "column": 32
                                    }
                                  },
                                  "name": "unhover"
                                },
                                "computed": false
                              },
                              "operator": "&&",
                              "right": {
                                "type": "CallExpression",
                                "start": 27877,
                                "end": 27899,
                                "loc": {
                                  "start": {
                                    "line": 669,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 669,
                                    "column": 58
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 27877,
                                  "end": 27897,
                                  "loc": {
                                    "start": {
                                      "line": 669,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 669,
                                      "column": 56
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 27877,
                                    "end": 27889,
                                    "loc": {
                                      "start": {
                                        "line": 669,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 669,
                                        "column": 48
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 27877,
                                      "end": 27880,
                                      "loc": {
                                        "start": {
                                          "line": 669,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 669,
                                          "column": 39
                                        }
                                      },
                                      "name": "obj"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 27881,
                                      "end": 27889,
                                      "loc": {
                                        "start": {
                                          "line": 669,
                                          "column": 40
                                        },
                                        "end": {
                                          "line": 669,
                                          "column": 48
                                        }
                                      },
                                      "name": "interact"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 27890,
                                    "end": 27897,
                                    "loc": {
                                      "start": {
                                        "line": 669,
                                        "column": 49
                                      },
                                      "end": {
                                        "line": 669,
                                        "column": 56
                                      }
                                    },
                                    "name": "unhover"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              }
                            }
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 27913,
                            "end": 27922,
                            "loc": {
                              "start": {
                                "line": 670,
                                "column": 12
                              },
                              "end": {
                                "line": 670,
                                "column": 21
                              }
                            },
                            "argument": {
                              "type": "Literal",
                              "start": 27920,
                              "end": 27921,
                              "loc": {
                                "start": {
                                  "line": 670,
                                  "column": 19
                                },
                                "end": {
                                  "line": 670,
                                  "column": 20
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            }
                          }
                        ]
                      },
                      "alternate": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 27942,
                      "end": 27971,
                      "loc": {
                        "start": {
                          "line": 673,
                          "column": 8
                        },
                        "end": {
                          "line": 673,
                          "column": 37
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 27946,
                          "end": 27970,
                          "loc": {
                            "start": {
                              "line": 673,
                              "column": 12
                            },
                            "end": {
                              "line": 673,
                              "column": 36
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 27946,
                            "end": 27949,
                            "loc": {
                              "start": {
                                "line": 673,
                                "column": 12
                              },
                              "end": {
                                "line": 673,
                                "column": 15
                              }
                            },
                            "name": "len"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 27952,
                            "end": 27970,
                            "loc": {
                              "start": {
                                "line": 673,
                                "column": 18
                              },
                              "end": {
                                "line": 673,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 27952,
                              "end": 27963,
                              "loc": {
                                "start": {
                                  "line": 673,
                                  "column": 18
                                },
                                "end": {
                                  "line": 673,
                                  "column": 29
                                }
                              },
                              "name": "constraints"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 27964,
                              "end": 27970,
                              "loc": {
                                "start": {
                                  "line": 673,
                                  "column": 30
                                },
                                "end": {
                                  "line": 673,
                                  "column": 36
                                }
                              },
                              "name": "length"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 27980,
                      "end": 28020,
                      "loc": {
                        "start": {
                          "line": 674,
                          "column": 8
                        },
                        "end": {
                          "line": 674,
                          "column": 48
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 27984,
                          "end": 28019,
                          "loc": {
                            "start": {
                              "line": 674,
                              "column": 12
                            },
                            "end": {
                              "line": 674,
                              "column": 47
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 27984,
                            "end": 27989,
                            "loc": {
                              "start": {
                                "line": 674,
                                "column": 12
                              },
                              "end": {
                                "line": 674,
                                "column": 17
                              }
                            },
                            "name": "scale"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 27992,
                            "end": 28019,
                            "loc": {
                              "start": {
                                "line": 674,
                                "column": 20
                              },
                              "end": {
                                "line": 674,
                                "column": 47
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 27992,
                              "end": 28017,
                              "loc": {
                                "start": {
                                  "line": 674,
                                  "column": 20
                                },
                                "end": {
                                  "line": 674,
                                  "column": 45
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 27992,
                                "end": 28011,
                                "loc": {
                                  "start": {
                                    "line": 674,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 674,
                                    "column": 39
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 27992,
                                  "end": 28006,
                                  "loc": {
                                    "start": {
                                      "line": 674,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 674,
                                      "column": 34
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 27992,
                                    "end": 28003,
                                    "loc": {
                                      "start": {
                                        "line": 674,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 674,
                                        "column": 31
                                      }
                                    },
                                    "name": "constraints"
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 28004,
                                    "end": 28005,
                                    "loc": {
                                      "start": {
                                        "line": 674,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 674,
                                        "column": 33
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 28007,
                                  "end": 28011,
                                  "loc": {
                                    "start": {
                                      "line": 674,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 674,
                                      "column": 39
                                    }
                                  },
                                  "name": "mesh"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 28012,
                                "end": 28017,
                                "loc": {
                                  "start": {
                                    "line": 674,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 674,
                                    "column": 45
                                  }
                                },
                                "name": "scale"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 28018,
                              "end": 28019,
                              "loc": {
                                "start": {
                                  "line": 674,
                                  "column": 46
                                },
                                "end": {
                                  "line": 674,
                                  "column": 47
                                }
                              },
                              "name": "x"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 28029,
                      "end": 28052,
                      "loc": {
                        "start": {
                          "line": 675,
                          "column": 8
                        },
                        "end": {
                          "line": 675,
                          "column": 31
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 28033,
                          "end": 28051,
                          "loc": {
                            "start": {
                              "line": 675,
                              "column": 12
                            },
                            "end": {
                              "line": 675,
                              "column": 30
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 28033,
                            "end": 28037,
                            "loc": {
                              "start": {
                                "line": 675,
                                "column": 12
                              },
                              "end": {
                                "line": 675,
                                "column": 16
                              }
                            },
                            "name": "size"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 28040,
                            "end": 28051,
                            "loc": {
                              "start": {
                                "line": 675,
                                "column": 19
                              },
                              "end": {
                                "line": 675,
                                "column": 30
                              }
                            },
                            "left": {
                              "type": "Literal",
                              "start": 28040,
                              "end": 28043,
                              "loc": {
                                "start": {
                                  "line": 675,
                                  "column": 19
                                },
                                "end": {
                                  "line": 675,
                                  "column": 22
                                }
                              },
                              "value": 1.2,
                              "rawValue": 1.2,
                              "raw": "1.2"
                            },
                            "operator": "*",
                            "right": {
                              "type": "Identifier",
                              "start": 28046,
                              "end": 28051,
                              "loc": {
                                "start": {
                                  "line": 675,
                                  "column": 25
                                },
                                "end": {
                                  "line": 675,
                                  "column": 30
                                }
                              },
                              "name": "scale"
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 28061,
                      "end": 28133,
                      "loc": {
                        "start": {
                          "line": 676,
                          "column": 8
                        },
                        "end": {
                          "line": 676,
                          "column": 80
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 28061,
                        "end": 28132,
                        "loc": {
                          "start": {
                            "line": 676,
                            "column": 8
                          },
                          "end": {
                            "line": 676,
                            "column": 79
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 28061,
                          "end": 28080,
                          "loc": {
                            "start": {
                              "line": 676,
                              "column": 8
                            },
                            "end": {
                              "line": 676,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 28061,
                            "end": 28076,
                            "loc": {
                              "start": {
                                "line": 676,
                                "column": 8
                              },
                              "end": {
                                "line": 676,
                                "column": 23
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 28061,
                              "end": 28070,
                              "loc": {
                                "start": {
                                  "line": 676,
                                  "column": 8
                                },
                                "end": {
                                  "line": 676,
                                  "column": 17
                                }
                              },
                              "name": "substrate"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 28071,
                              "end": 28076,
                              "loc": {
                                "start": {
                                  "line": 676,
                                  "column": 18
                                },
                                "end": {
                                  "line": 676,
                                  "column": 23
                                }
                              },
                              "name": "scale"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 28077,
                            "end": 28080,
                            "loc": {
                              "start": {
                                "line": 676,
                                "column": 24
                              },
                              "end": {
                                "line": 676,
                                "column": 27
                              }
                            },
                            "name": "set"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "BinaryExpression",
                            "start": 28081,
                            "end": 28106,
                            "loc": {
                              "start": {
                                "line": 676,
                                "column": 28
                              },
                              "end": {
                                "line": 676,
                                "column": 53
                              }
                            },
                            "left": {
                              "type": "Identifier",
                              "start": 28081,
                              "end": 28085,
                              "loc": {
                                "start": {
                                  "line": 676,
                                  "column": 28
                                },
                                "end": {
                                  "line": 676,
                                  "column": 32
                                }
                              },
                              "name": "size"
                            },
                            "operator": "*",
                            "right": {
                              "type": "MemberExpression",
                              "start": 28088,
                              "end": 28106,
                              "loc": {
                                "start": {
                                  "line": 676,
                                  "column": 35
                                },
                                "end": {
                                  "line": 676,
                                  "column": 53
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 28088,
                                "end": 28099,
                                "loc": {
                                  "start": {
                                    "line": 676,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 676,
                                    "column": 46
                                  }
                                },
                                "name": "constraints"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 28100,
                                "end": 28106,
                                "loc": {
                                  "start": {
                                    "line": 676,
                                    "column": 47
                                  },
                                  "end": {
                                    "line": 676,
                                    "column": 53
                                  }
                                },
                                "name": "length"
                              },
                              "computed": false
                            }
                          },
                          {
                            "type": "Identifier",
                            "start": 28108,
                            "end": 28112,
                            "loc": {
                              "start": {
                                "line": 676,
                                "column": 55
                              },
                              "end": {
                                "line": 676,
                                "column": 59
                              }
                            },
                            "name": "size"
                          },
                          {
                            "type": "CallExpression",
                            "start": 28114,
                            "end": 28131,
                            "loc": {
                              "start": {
                                "line": 676,
                                "column": 61
                              },
                              "end": {
                                "line": 676,
                                "column": 78
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 28114,
                              "end": 28122,
                              "loc": {
                                "start": {
                                  "line": 676,
                                  "column": 61
                                },
                                "end": {
                                  "line": 676,
                                  "column": 69
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 28114,
                                "end": 28118,
                                "loc": {
                                  "start": {
                                    "line": 676,
                                    "column": 61
                                  },
                                  "end": {
                                    "line": 676,
                                    "column": 65
                                  }
                                },
                                "name": "Math"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 28119,
                                "end": 28122,
                                "loc": {
                                  "start": {
                                    "line": 676,
                                    "column": 66
                                  },
                                  "end": {
                                    "line": 676,
                                    "column": 69
                                  }
                                },
                                "name": "min"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 28123,
                                "end": 28127,
                                "loc": {
                                  "start": {
                                    "line": 676,
                                    "column": 70
                                  },
                                  "end": {
                                    "line": 676,
                                    "column": 74
                                  }
                                },
                                "name": "size"
                              },
                              {
                                "type": "Literal",
                                "start": 28129,
                                "end": 28130,
                                "loc": {
                                  "start": {
                                    "line": 676,
                                    "column": 76
                                  },
                                  "end": {
                                    "line": 676,
                                    "column": 77
                                  }
                                },
                                "value": 1,
                                "rawValue": 1,
                                "raw": "1"
                              }
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 28142,
                      "end": 28202,
                      "loc": {
                        "start": {
                          "line": 677,
                          "column": 8
                        },
                        "end": {
                          "line": 677,
                          "column": 68
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 28146,
                          "end": 28201,
                          "loc": {
                            "start": {
                              "line": 677,
                              "column": 12
                            },
                            "end": {
                              "line": 677,
                              "column": 67
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 28146,
                            "end": 28149,
                            "loc": {
                              "start": {
                                "line": 677,
                                "column": 12
                              },
                              "end": {
                                "line": 677,
                                "column": 15
                              }
                            },
                            "name": "pos"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 28152,
                            "end": 28201,
                            "loc": {
                              "start": {
                                "line": 677,
                                "column": 18
                              },
                              "end": {
                                "line": 677,
                                "column": 67
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 28152,
                              "end": 28176,
                              "loc": {
                                "start": {
                                  "line": 677,
                                  "column": 18
                                },
                                "end": {
                                  "line": 677,
                                  "column": 42
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 28152,
                                "end": 28155,
                                "loc": {
                                  "start": {
                                    "line": 677,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 677,
                                    "column": 21
                                  }
                                },
                                "name": "obj"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 28156,
                                "end": 28176,
                                "loc": {
                                  "start": {
                                    "line": 677,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 677,
                                    "column": 42
                                  }
                                },
                                "name": "getSubstratePosition"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 28177,
                                "end": 28194,
                                "loc": {
                                  "start": {
                                    "line": 677,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 677,
                                    "column": 60
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 28177,
                                  "end": 28192,
                                  "loc": {
                                    "start": {
                                      "line": 677,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 677,
                                      "column": 58
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 28177,
                                    "end": 28186,
                                    "loc": {
                                      "start": {
                                        "line": 677,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 677,
                                        "column": 52
                                      }
                                    },
                                    "name": "substrate"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 28187,
                                    "end": 28192,
                                    "loc": {
                                      "start": {
                                        "line": 677,
                                        "column": 53
                                      },
                                      "end": {
                                        "line": 677,
                                        "column": 58
                                      }
                                    },
                                    "name": "scale"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 28193,
                                  "end": 28194,
                                  "loc": {
                                    "start": {
                                      "line": 677,
                                      "column": 59
                                    },
                                    "end": {
                                      "line": 677,
                                      "column": 60
                                    }
                                  },
                                  "name": "x"
                                },
                                "computed": false
                              },
                              {
                                "type": "Identifier",
                                "start": 28196,
                                "end": 28200,
                                "loc": {
                                  "start": {
                                    "line": 677,
                                    "column": 62
                                  },
                                  "end": {
                                    "line": 677,
                                    "column": 66
                                  }
                                },
                                "name": "size"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 28211,
                      "end": 28252,
                      "loc": {
                        "start": {
                          "line": 678,
                          "column": 8
                        },
                        "end": {
                          "line": 678,
                          "column": 49
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 28211,
                        "end": 28251,
                        "loc": {
                          "start": {
                            "line": 678,
                            "column": 8
                          },
                          "end": {
                            "line": 678,
                            "column": 48
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 28211,
                          "end": 28233,
                          "loc": {
                            "start": {
                              "line": 678,
                              "column": 8
                            },
                            "end": {
                              "line": 678,
                              "column": 30
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 28211,
                            "end": 28229,
                            "loc": {
                              "start": {
                                "line": 678,
                                "column": 8
                              },
                              "end": {
                                "line": 678,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 28211,
                              "end": 28220,
                              "loc": {
                                "start": {
                                  "line": 678,
                                  "column": 8
                                },
                                "end": {
                                  "line": 678,
                                  "column": 17
                                }
                              },
                              "name": "substrate"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 28221,
                              "end": 28229,
                              "loc": {
                                "start": {
                                  "line": 678,
                                  "column": 18
                                },
                                "end": {
                                  "line": 678,
                                  "column": 26
                                }
                              },
                              "name": "position"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 28230,
                            "end": 28233,
                            "loc": {
                              "start": {
                                "line": 678,
                                "column": 27
                              },
                              "end": {
                                "line": 678,
                                "column": 30
                              }
                            },
                            "name": "set"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 28234,
                            "end": 28239,
                            "loc": {
                              "start": {
                                "line": 678,
                                "column": 31
                              },
                              "end": {
                                "line": 678,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 28234,
                              "end": 28237,
                              "loc": {
                                "start": {
                                  "line": 678,
                                  "column": 31
                                },
                                "end": {
                                  "line": 678,
                                  "column": 34
                                }
                              },
                              "name": "pos"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 28238,
                              "end": 28239,
                              "loc": {
                                "start": {
                                  "line": 678,
                                  "column": 35
                                },
                                "end": {
                                  "line": 678,
                                  "column": 36
                                }
                              },
                              "name": "x"
                            },
                            "computed": false
                          },
                          {
                            "type": "MemberExpression",
                            "start": 28241,
                            "end": 28246,
                            "loc": {
                              "start": {
                                "line": 678,
                                "column": 38
                              },
                              "end": {
                                "line": 678,
                                "column": 43
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 28241,
                              "end": 28244,
                              "loc": {
                                "start": {
                                  "line": 678,
                                  "column": 38
                                },
                                "end": {
                                  "line": 678,
                                  "column": 41
                                }
                              },
                              "name": "pos"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 28245,
                              "end": 28246,
                              "loc": {
                                "start": {
                                  "line": 678,
                                  "column": 42
                                },
                                "end": {
                                  "line": 678,
                                  "column": 43
                                }
                              },
                              "name": "y"
                            },
                            "computed": false
                          },
                          {
                            "type": "UnaryExpression",
                            "start": 28248,
                            "end": 28250,
                            "loc": {
                              "start": {
                                "line": 678,
                                "column": 45
                              },
                              "end": {
                                "line": 678,
                                "column": 47
                              }
                            },
                            "operator": "-",
                            "prefix": true,
                            "argument": {
                              "type": "Literal",
                              "start": 28249,
                              "end": 28250,
                              "loc": {
                                "start": {
                                  "line": 678,
                                  "column": 46
                                },
                                "end": {
                                  "line": 678,
                                  "column": 47
                                }
                              },
                              "value": 1,
                              "rawValue": 1,
                              "raw": "1"
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 28261,
                      "end": 28339,
                      "loc": {
                        "start": {
                          "line": 679,
                          "column": 8
                        },
                        "end": {
                          "line": 679,
                          "column": 86
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 28265,
                          "end": 28338,
                          "loc": {
                            "start": {
                              "line": 679,
                              "column": 12
                            },
                            "end": {
                              "line": 679,
                              "column": 85
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 28265,
                            "end": 28274,
                            "loc": {
                              "start": {
                                "line": 679,
                                "column": 12
                              },
                              "end": {
                                "line": 679,
                                "column": 21
                              }
                            },
                            "name": "mostLeftX"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 28277,
                            "end": 28338,
                            "loc": {
                              "start": {
                                "line": 679,
                                "column": 24
                              },
                              "end": {
                                "line": 679,
                                "column": 85
                              }
                            },
                            "left": {
                              "type": "BinaryExpression",
                              "start": 28277,
                              "end": 28314,
                              "loc": {
                                "start": {
                                  "line": 679,
                                  "column": 24
                                },
                                "end": {
                                  "line": 679,
                                  "column": 61
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 28277,
                                "end": 28297,
                                "loc": {
                                  "start": {
                                    "line": 679,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 679,
                                    "column": 44
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 28277,
                                  "end": 28295,
                                  "loc": {
                                    "start": {
                                      "line": 679,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 679,
                                      "column": 42
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 28277,
                                    "end": 28286,
                                    "loc": {
                                      "start": {
                                        "line": 679,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 679,
                                        "column": 33
                                      }
                                    },
                                    "name": "substrate"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 28287,
                                    "end": 28295,
                                    "loc": {
                                      "start": {
                                        "line": 679,
                                        "column": 34
                                      },
                                      "end": {
                                        "line": 679,
                                        "column": 42
                                      }
                                    },
                                    "name": "position"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 28296,
                                  "end": 28297,
                                  "loc": {
                                    "start": {
                                      "line": 679,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 679,
                                      "column": 44
                                    }
                                  },
                                  "name": "x"
                                },
                                "computed": false
                              },
                              "operator": "+",
                              "right": {
                                "type": "MemberExpression",
                                "start": 28300,
                                "end": 28314,
                                "loc": {
                                  "start": {
                                    "line": 679,
                                    "column": 47
                                  },
                                  "end": {
                                    "line": 679,
                                    "column": 61
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 28300,
                                  "end": 28312,
                                  "loc": {
                                    "start": {
                                      "line": 679,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 679,
                                      "column": 59
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 28300,
                                    "end": 28303,
                                    "loc": {
                                      "start": {
                                        "line": 679,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 679,
                                        "column": 50
                                      }
                                    },
                                    "name": "obj"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 28304,
                                    "end": 28312,
                                    "loc": {
                                      "start": {
                                        "line": 679,
                                        "column": 51
                                      },
                                      "end": {
                                        "line": 679,
                                        "column": 59
                                      }
                                    },
                                    "name": "position"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 28313,
                                  "end": 28314,
                                  "loc": {
                                    "start": {
                                      "line": 679,
                                      "column": 60
                                    },
                                    "end": {
                                      "line": 679,
                                      "column": 61
                                    }
                                  },
                                  "name": "x"
                                },
                                "computed": false
                              }
                            },
                            "operator": "-",
                            "right": {
                              "type": "BinaryExpression",
                              "start": 28317,
                              "end": 28338,
                              "loc": {
                                "start": {
                                  "line": 679,
                                  "column": 64
                                },
                                "end": {
                                  "line": 679,
                                  "column": 85
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 28317,
                                "end": 28334,
                                "loc": {
                                  "start": {
                                    "line": 679,
                                    "column": 64
                                  },
                                  "end": {
                                    "line": 679,
                                    "column": 81
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 28317,
                                  "end": 28332,
                                  "loc": {
                                    "start": {
                                      "line": 679,
                                      "column": 64
                                    },
                                    "end": {
                                      "line": 679,
                                      "column": 79
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 28317,
                                    "end": 28326,
                                    "loc": {
                                      "start": {
                                        "line": 679,
                                        "column": 64
                                      },
                                      "end": {
                                        "line": 679,
                                        "column": 73
                                      }
                                    },
                                    "name": "substrate"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 28327,
                                    "end": 28332,
                                    "loc": {
                                      "start": {
                                        "line": 679,
                                        "column": 74
                                      },
                                      "end": {
                                        "line": 679,
                                        "column": 79
                                      }
                                    },
                                    "name": "scale"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 28333,
                                  "end": 28334,
                                  "loc": {
                                    "start": {
                                      "line": 679,
                                      "column": 80
                                    },
                                    "end": {
                                      "line": 679,
                                      "column": 81
                                    }
                                  },
                                  "name": "x"
                                },
                                "computed": false
                              },
                              "operator": "/",
                              "right": {
                                "type": "Literal",
                                "start": 28337,
                                "end": 28338,
                                "loc": {
                                  "start": {
                                    "line": 679,
                                    "column": 84
                                  },
                                  "end": {
                                    "line": 679,
                                    "column": 85
                                  }
                                },
                                "value": 2,
                                "rawValue": 2,
                                "raw": "2"
                              }
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 28348,
                      "end": 28400,
                      "loc": {
                        "start": {
                          "line": 680,
                          "column": 8
                        },
                        "end": {
                          "line": 680,
                          "column": 60
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 28352,
                          "end": 28399,
                          "loc": {
                            "start": {
                              "line": 680,
                              "column": 12
                            },
                            "end": {
                              "line": 680,
                              "column": 59
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 28352,
                            "end": 28359,
                            "loc": {
                              "start": {
                                "line": 680,
                                "column": 12
                              },
                              "end": {
                                "line": 680,
                                "column": 19
                              }
                            },
                            "name": "middleY"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 28362,
                            "end": 28399,
                            "loc": {
                              "start": {
                                "line": 680,
                                "column": 22
                              },
                              "end": {
                                "line": 680,
                                "column": 59
                              }
                            },
                            "left": {
                              "type": "MemberExpression",
                              "start": 28362,
                              "end": 28382,
                              "loc": {
                                "start": {
                                  "line": 680,
                                  "column": 22
                                },
                                "end": {
                                  "line": 680,
                                  "column": 42
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 28362,
                                "end": 28380,
                                "loc": {
                                  "start": {
                                    "line": 680,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 680,
                                    "column": 40
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 28362,
                                  "end": 28371,
                                  "loc": {
                                    "start": {
                                      "line": 680,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 680,
                                      "column": 31
                                    }
                                  },
                                  "name": "substrate"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 28372,
                                  "end": 28380,
                                  "loc": {
                                    "start": {
                                      "line": 680,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 680,
                                      "column": 40
                                    }
                                  },
                                  "name": "position"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 28381,
                                "end": 28382,
                                "loc": {
                                  "start": {
                                    "line": 680,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 680,
                                    "column": 42
                                  }
                                },
                                "name": "y"
                              },
                              "computed": false
                            },
                            "operator": "+",
                            "right": {
                              "type": "MemberExpression",
                              "start": 28385,
                              "end": 28399,
                              "loc": {
                                "start": {
                                  "line": 680,
                                  "column": 45
                                },
                                "end": {
                                  "line": 680,
                                  "column": 59
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 28385,
                                "end": 28397,
                                "loc": {
                                  "start": {
                                    "line": 680,
                                    "column": 45
                                  },
                                  "end": {
                                    "line": 680,
                                    "column": 57
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 28385,
                                  "end": 28388,
                                  "loc": {
                                    "start": {
                                      "line": 680,
                                      "column": 45
                                    },
                                    "end": {
                                      "line": 680,
                                      "column": 48
                                    }
                                  },
                                  "name": "obj"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 28389,
                                  "end": 28397,
                                  "loc": {
                                    "start": {
                                      "line": 680,
                                      "column": 49
                                    },
                                    "end": {
                                      "line": 680,
                                      "column": 57
                                    }
                                  },
                                  "name": "position"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 28398,
                                "end": 28399,
                                "loc": {
                                  "start": {
                                    "line": 680,
                                    "column": 58
                                  },
                                  "end": {
                                    "line": 680,
                                    "column": 59
                                  }
                                },
                                "name": "y"
                              },
                              "computed": false
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ForStatement",
                      "start": 28409,
                      "end": 28533,
                      "loc": {
                        "start": {
                          "line": 681,
                          "column": 8
                        },
                        "end": {
                          "line": 683,
                          "column": 9
                        }
                      },
                      "init": {
                        "type": "VariableDeclaration",
                        "start": 28414,
                        "end": 28423,
                        "loc": {
                          "start": {
                            "line": 681,
                            "column": 13
                          },
                          "end": {
                            "line": 681,
                            "column": 22
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 28418,
                            "end": 28423,
                            "loc": {
                              "start": {
                                "line": 681,
                                "column": 17
                              },
                              "end": {
                                "line": 681,
                                "column": 22
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 28418,
                              "end": 28419,
                              "loc": {
                                "start": {
                                  "line": 681,
                                  "column": 17
                                },
                                "end": {
                                  "line": 681,
                                  "column": 18
                                }
                              },
                              "name": "i"
                            },
                            "init": {
                              "type": "Literal",
                              "start": 28422,
                              "end": 28423,
                              "loc": {
                                "start": {
                                  "line": 681,
                                  "column": 21
                                },
                                "end": {
                                  "line": 681,
                                  "column": 22
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            }
                          }
                        ],
                        "kind": "var"
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 28425,
                        "end": 28432,
                        "loc": {
                          "start": {
                            "line": 681,
                            "column": 24
                          },
                          "end": {
                            "line": 681,
                            "column": 31
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 28425,
                          "end": 28426,
                          "loc": {
                            "start": {
                              "line": 681,
                              "column": 24
                            },
                            "end": {
                              "line": 681,
                              "column": 25
                            }
                          },
                          "name": "i"
                        },
                        "operator": "<",
                        "right": {
                          "type": "Identifier",
                          "start": 28429,
                          "end": 28432,
                          "loc": {
                            "start": {
                              "line": 681,
                              "column": 28
                            },
                            "end": {
                              "line": 681,
                              "column": 31
                            }
                          },
                          "name": "len"
                        }
                      },
                      "update": {
                        "type": "UpdateExpression",
                        "start": 28434,
                        "end": 28437,
                        "loc": {
                          "start": {
                            "line": 681,
                            "column": 33
                          },
                          "end": {
                            "line": 681,
                            "column": 36
                          }
                        },
                        "operator": "++",
                        "prefix": true,
                        "argument": {
                          "type": "Identifier",
                          "start": 28436,
                          "end": 28437,
                          "loc": {
                            "start": {
                              "line": 681,
                              "column": 35
                            },
                            "end": {
                              "line": 681,
                              "column": 36
                            }
                          },
                          "name": "i"
                        }
                      },
                      "body": {
                        "type": "BlockStatement",
                        "start": 28439,
                        "end": 28533,
                        "loc": {
                          "start": {
                            "line": 681,
                            "column": 38
                          },
                          "end": {
                            "line": 683,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 28453,
                            "end": 28523,
                            "loc": {
                              "start": {
                                "line": 682,
                                "column": 12
                              },
                              "end": {
                                "line": 682,
                                "column": 82
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 28453,
                              "end": 28522,
                              "loc": {
                                "start": {
                                  "line": 682,
                                  "column": 12
                                },
                                "end": {
                                  "line": 682,
                                  "column": 81
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 28453,
                                "end": 28480,
                                "loc": {
                                  "start": {
                                    "line": 682,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 682,
                                    "column": 39
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 28453,
                                  "end": 28476,
                                  "loc": {
                                    "start": {
                                      "line": 682,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 682,
                                      "column": 35
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 28453,
                                    "end": 28467,
                                    "loc": {
                                      "start": {
                                        "line": 682,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 682,
                                        "column": 26
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 28453,
                                      "end": 28464,
                                      "loc": {
                                        "start": {
                                          "line": 682,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 682,
                                          "column": 23
                                        }
                                      },
                                      "name": "constraints"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 28465,
                                      "end": 28466,
                                      "loc": {
                                        "start": {
                                          "line": 682,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 682,
                                          "column": 25
                                        }
                                      },
                                      "name": "i"
                                    },
                                    "computed": true
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 28468,
                                    "end": 28476,
                                    "loc": {
                                      "start": {
                                        "line": 682,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 682,
                                        "column": 35
                                      }
                                    },
                                    "name": "position"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 28477,
                                  "end": 28480,
                                  "loc": {
                                    "start": {
                                      "line": 682,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 682,
                                      "column": 39
                                    }
                                  },
                                  "name": "set"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 28481,
                                  "end": 28509,
                                  "loc": {
                                    "start": {
                                      "line": 682,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 682,
                                      "column": 68
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 28481,
                                    "end": 28490,
                                    "loc": {
                                      "start": {
                                        "line": 682,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 682,
                                        "column": 49
                                      }
                                    },
                                    "name": "mostLeftX"
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "BinaryExpression",
                                    "start": 28493,
                                    "end": 28509,
                                    "loc": {
                                      "start": {
                                        "line": 682,
                                        "column": 52
                                      },
                                      "end": {
                                        "line": 682,
                                        "column": 68
                                      }
                                    },
                                    "left": {
                                      "type": "BinaryExpression",
                                      "start": 28494,
                                      "end": 28501,
                                      "loc": {
                                        "start": {
                                          "line": 682,
                                          "column": 53
                                        },
                                        "end": {
                                          "line": 682,
                                          "column": 60
                                        }
                                      },
                                      "left": {
                                        "type": "Identifier",
                                        "start": 28494,
                                        "end": 28495,
                                        "loc": {
                                          "start": {
                                            "line": 682,
                                            "column": 53
                                          },
                                          "end": {
                                            "line": 682,
                                            "column": 54
                                          }
                                        },
                                        "name": "i"
                                      },
                                      "operator": "+",
                                      "right": {
                                        "type": "Literal",
                                        "start": 28498,
                                        "end": 28501,
                                        "loc": {
                                          "start": {
                                            "line": 682,
                                            "column": 57
                                          },
                                          "end": {
                                            "line": 682,
                                            "column": 60
                                          }
                                        },
                                        "value": 0.5,
                                        "rawValue": 0.5,
                                        "raw": "0.5"
                                      },
                                      "parenthesizedExpression": true
                                    },
                                    "operator": "*",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 28505,
                                      "end": 28509,
                                      "loc": {
                                        "start": {
                                          "line": 682,
                                          "column": 64
                                        },
                                        "end": {
                                          "line": 682,
                                          "column": 68
                                        }
                                      },
                                      "name": "size"
                                    }
                                  }
                                },
                                {
                                  "type": "Identifier",
                                  "start": 28511,
                                  "end": 28518,
                                  "loc": {
                                    "start": {
                                      "line": 682,
                                      "column": 70
                                    },
                                    "end": {
                                      "line": 682,
                                      "column": 77
                                    }
                                  },
                                  "name": "middleY"
                                },
                                {
                                  "type": "Literal",
                                  "start": 28520,
                                  "end": 28521,
                                  "loc": {
                                    "start": {
                                      "line": 682,
                                      "column": 79
                                    },
                                    "end": {
                                      "line": 682,
                                      "column": 80
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 28545,
              "end": 28720,
              "loc": {
                "start": {
                  "line": 686,
                  "column": 4
                },
                "end": {
                  "line": 691,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 28545,
                "end": 28553,
                "loc": {
                  "start": {
                    "line": 686,
                    "column": 4
                  },
                  "end": {
                    "line": 686,
                    "column": 12
                  }
                },
                "name": "getState"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 28553,
                "end": 28720,
                "loc": {
                  "start": {
                    "line": 686,
                    "column": 12
                  },
                  "end": {
                    "line": 691,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 28556,
                  "end": 28720,
                  "loc": {
                    "start": {
                      "line": 686,
                      "column": 15
                    },
                    "end": {
                      "line": 691,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 28566,
                      "end": 28588,
                      "loc": {
                        "start": {
                          "line": 687,
                          "column": 8
                        },
                        "end": {
                          "line": 687,
                          "column": 30
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 28570,
                          "end": 28587,
                          "loc": {
                            "start": {
                              "line": 687,
                              "column": 12
                            },
                            "end": {
                              "line": 687,
                              "column": 29
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 28570,
                            "end": 28575,
                            "loc": {
                              "start": {
                                "line": 687,
                                "column": 12
                              },
                              "end": {
                                "line": 687,
                                "column": 17
                              }
                            },
                            "name": "state"
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 28578,
                            "end": 28587,
                            "loc": {
                              "start": {
                                "line": 687,
                                "column": 20
                              },
                              "end": {
                                "line": 687,
                                "column": 29
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 28582,
                              "end": 28585,
                              "loc": {
                                "start": {
                                  "line": 687,
                                  "column": 24
                                },
                                "end": {
                                  "line": 687,
                                  "column": 27
                                }
                              },
                              "name": "Map"
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ForOfStatement",
                      "start": 28597,
                      "end": 28692,
                      "loc": {
                        "start": {
                          "line": 688,
                          "column": 8
                        },
                        "end": {
                          "line": 689,
                          "column": 49
                        }
                      },
                      "left": {
                        "type": "VariableDeclaration",
                        "start": 28602,
                        "end": 28612,
                        "loc": {
                          "start": {
                            "line": 688,
                            "column": 13
                          },
                          "end": {
                            "line": 688,
                            "column": 23
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 28606,
                            "end": 28612,
                            "loc": {
                              "start": {
                                "line": 688,
                                "column": 17
                              },
                              "end": {
                                "line": 688,
                                "column": 23
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 28606,
                              "end": 28612,
                              "loc": {
                                "start": {
                                  "line": 688,
                                  "column": 17
                                },
                                "end": {
                                  "line": 688,
                                  "column": 23
                                }
                              },
                              "name": "object"
                            },
                            "init": null
                          }
                        ],
                        "kind": "var"
                      },
                      "right": {
                        "type": "CallExpression",
                        "start": 28616,
                        "end": 28641,
                        "loc": {
                          "start": {
                            "line": 688,
                            "column": 27
                          },
                          "end": {
                            "line": 688,
                            "column": 52
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 28616,
                          "end": 28639,
                          "loc": {
                            "start": {
                              "line": 688,
                              "column": 27
                            },
                            "end": {
                              "line": 688,
                              "column": 50
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 28616,
                            "end": 28620,
                            "loc": {
                              "start": {
                                "line": 688,
                                "column": 27
                              },
                              "end": {
                                "line": 688,
                                "column": 31
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 28621,
                            "end": 28639,
                            "loc": {
                              "start": {
                                "line": 688,
                                "column": 32
                              },
                              "end": {
                                "line": 688,
                                "column": 50
                              }
                            },
                            "name": "getObjectsOnSketch"
                          },
                          "computed": false
                        },
                        "arguments": []
                      },
                      "body": {
                        "type": "ExpressionStatement",
                        "start": 28655,
                        "end": 28692,
                        "loc": {
                          "start": {
                            "line": 689,
                            "column": 12
                          },
                          "end": {
                            "line": 689,
                            "column": 49
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 28655,
                          "end": 28691,
                          "loc": {
                            "start": {
                              "line": 689,
                              "column": 12
                            },
                            "end": {
                              "line": 689,
                              "column": 48
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 28655,
                            "end": 28664,
                            "loc": {
                              "start": {
                                "line": 689,
                                "column": 12
                              },
                              "end": {
                                "line": 689,
                                "column": 21
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 28655,
                              "end": 28660,
                              "loc": {
                                "start": {
                                  "line": 689,
                                  "column": 12
                                },
                                "end": {
                                  "line": 689,
                                  "column": 17
                                }
                              },
                              "name": "state"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 28661,
                              "end": 28664,
                              "loc": {
                                "start": {
                                  "line": 689,
                                  "column": 18
                                },
                                "end": {
                                  "line": 689,
                                  "column": 21
                                }
                              },
                              "name": "set"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 28665,
                              "end": 28671,
                              "loc": {
                                "start": {
                                  "line": 689,
                                  "column": 22
                                },
                                "end": {
                                  "line": 689,
                                  "column": 28
                                }
                              },
                              "name": "object"
                            },
                            {
                              "type": "CallExpression",
                              "start": 28673,
                              "end": 28690,
                              "loc": {
                                "start": {
                                  "line": 689,
                                  "column": 30
                                },
                                "end": {
                                  "line": 689,
                                  "column": 47
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 28673,
                                "end": 28688,
                                "loc": {
                                  "start": {
                                    "line": 689,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 689,
                                    "column": 45
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 28673,
                                  "end": 28679,
                                  "loc": {
                                    "start": {
                                      "line": 689,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 689,
                                      "column": 36
                                    }
                                  },
                                  "name": "object"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 28680,
                                  "end": 28688,
                                  "loc": {
                                    "start": {
                                      "line": 689,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 689,
                                      "column": 45
                                    }
                                  },
                                  "name": "getState"
                                },
                                "computed": false
                              },
                              "arguments": []
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 28701,
                      "end": 28714,
                      "loc": {
                        "start": {
                          "line": 690,
                          "column": 8
                        },
                        "end": {
                          "line": 690,
                          "column": 21
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 28708,
                        "end": 28713,
                        "loc": {
                          "start": {
                            "line": 690,
                            "column": 15
                          },
                          "end": {
                            "line": 690,
                            "column": 20
                          }
                        },
                        "name": "state"
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 28726,
              "end": 30940,
              "loc": {
                "start": {
                  "line": 693,
                  "column": 4
                },
                "end": {
                  "line": 740,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 28726,
                "end": 28752,
                "loc": {
                  "start": {
                    "line": 693,
                    "column": 4
                  },
                  "end": {
                    "line": 693,
                    "column": 30
                  }
                },
                "name": "getStateLinearContinuation"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 28752,
                "end": 30940,
                "loc": {
                  "start": {
                    "line": 693,
                    "column": 30
                  },
                  "end": {
                    "line": 740,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 28753,
                    "end": 28759,
                    "loc": {
                      "start": {
                        "line": 693,
                        "column": 31
                      },
                      "end": {
                        "line": 693,
                        "column": 37
                      }
                    },
                    "name": "states"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 28761,
                  "end": 30940,
                  "loc": {
                    "start": {
                      "line": 693,
                      "column": 39
                    },
                    "end": {
                      "line": 740,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 28771,
                      "end": 28824,
                      "loc": {
                        "start": {
                          "line": 694,
                          "column": 8
                        },
                        "end": {
                          "line": 694,
                          "column": 61
                        }
                      },
                      "test": {
                        "type": "LogicalExpression",
                        "start": 28775,
                        "end": 28815,
                        "loc": {
                          "start": {
                            "line": 694,
                            "column": 12
                          },
                          "end": {
                            "line": 694,
                            "column": 52
                          }
                        },
                        "left": {
                          "type": "BinaryExpression",
                          "start": 28775,
                          "end": 28793,
                          "loc": {
                            "start": {
                              "line": 694,
                              "column": 12
                            },
                            "end": {
                              "line": 694,
                              "column": 30
                            }
                          },
                          "left": {
                            "type": "MemberExpression",
                            "start": 28775,
                            "end": 28784,
                            "loc": {
                              "start": {
                                "line": 694,
                                "column": 12
                              },
                              "end": {
                                "line": 694,
                                "column": 21
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 28775,
                              "end": 28781,
                              "loc": {
                                "start": {
                                  "line": 694,
                                  "column": 12
                                },
                                "end": {
                                  "line": 694,
                                  "column": 18
                                }
                              },
                              "name": "states"
                            },
                            "property": {
                              "type": "Literal",
                              "start": 28782,
                              "end": 28783,
                              "loc": {
                                "start": {
                                  "line": 694,
                                  "column": 19
                                },
                                "end": {
                                  "line": 694,
                                  "column": 20
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            },
                            "computed": true
                          },
                          "operator": "===",
                          "right": {
                            "type": "Literal",
                            "start": 28789,
                            "end": 28793,
                            "loc": {
                              "start": {
                                "line": 694,
                                "column": 26
                              },
                              "end": {
                                "line": 694,
                                "column": 30
                              }
                            },
                            "value": null,
                            "rawValue": null,
                            "raw": "null"
                          }
                        },
                        "operator": "||",
                        "right": {
                          "type": "BinaryExpression",
                          "start": 28797,
                          "end": 28815,
                          "loc": {
                            "start": {
                              "line": 694,
                              "column": 34
                            },
                            "end": {
                              "line": 694,
                              "column": 52
                            }
                          },
                          "left": {
                            "type": "MemberExpression",
                            "start": 28797,
                            "end": 28806,
                            "loc": {
                              "start": {
                                "line": 694,
                                "column": 34
                              },
                              "end": {
                                "line": 694,
                                "column": 43
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 28797,
                              "end": 28803,
                              "loc": {
                                "start": {
                                  "line": 694,
                                  "column": 34
                                },
                                "end": {
                                  "line": 694,
                                  "column": 40
                                }
                              },
                              "name": "states"
                            },
                            "property": {
                              "type": "Literal",
                              "start": 28804,
                              "end": 28805,
                              "loc": {
                                "start": {
                                  "line": 694,
                                  "column": 41
                                },
                                "end": {
                                  "line": 694,
                                  "column": 42
                                }
                              },
                              "value": 1,
                              "rawValue": 1,
                              "raw": "1"
                            },
                            "computed": true
                          },
                          "operator": "===",
                          "right": {
                            "type": "Literal",
                            "start": 28811,
                            "end": 28815,
                            "loc": {
                              "start": {
                                "line": 694,
                                "column": 48
                              },
                              "end": {
                                "line": 694,
                                "column": 52
                              }
                            },
                            "value": null,
                            "rawValue": null,
                            "raw": "null"
                          }
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 28817,
                        "end": 28824,
                        "loc": {
                          "start": {
                            "line": 694,
                            "column": 54
                          },
                          "end": {
                            "line": 694,
                            "column": 61
                          }
                        },
                        "argument": null
                      },
                      "alternate": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 28833,
                      "end": 28859,
                      "loc": {
                        "start": {
                          "line": 695,
                          "column": 8
                        },
                        "end": {
                          "line": 695,
                          "column": 34
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 28837,
                          "end": 28858,
                          "loc": {
                            "start": {
                              "line": 695,
                              "column": 12
                            },
                            "end": {
                              "line": 695,
                              "column": 33
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 28837,
                            "end": 28846,
                            "loc": {
                              "start": {
                                "line": 695,
                                "column": 12
                              },
                              "end": {
                                "line": 695,
                                "column": 21
                              }
                            },
                            "name": "stateDiff"
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 28849,
                            "end": 28858,
                            "loc": {
                              "start": {
                                "line": 695,
                                "column": 24
                              },
                              "end": {
                                "line": 695,
                                "column": 33
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 28853,
                              "end": 28856,
                              "loc": {
                                "start": {
                                  "line": 695,
                                  "column": 28
                                },
                                "end": {
                                  "line": 695,
                                  "column": 31
                                }
                              },
                              "name": "Map"
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "FunctionDeclaration",
                      "start": 28869,
                      "end": 29141,
                      "loc": {
                        "start": {
                          "line": 697,
                          "column": 8
                        },
                        "end": {
                          "line": 701,
                          "column": 9
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 28878,
                        "end": 28890,
                        "loc": {
                          "start": {
                            "line": 697,
                            "column": 17
                          },
                          "end": {
                            "line": 697,
                            "column": 29
                          }
                        },
                        "name": "getPointDiff"
                      },
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 28892,
                          "end": 28898,
                          "loc": {
                            "start": {
                              "line": 697,
                              "column": 31
                            },
                            "end": {
                              "line": 697,
                              "column": 37
                            }
                          },
                          "name": "states"
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "start": 28900,
                        "end": 29141,
                        "loc": {
                          "start": {
                            "line": 697,
                            "column": 39
                          },
                          "end": {
                            "line": 701,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "IfStatement",
                            "start": 28914,
                            "end": 28977,
                            "loc": {
                              "start": {
                                "line": 698,
                                "column": 12
                              },
                              "end": {
                                "line": 698,
                                "column": 75
                              }
                            },
                            "test": {
                              "type": "UnaryExpression",
                              "start": 28918,
                              "end": 28940,
                              "loc": {
                                "start": {
                                  "line": 698,
                                  "column": 16
                                },
                                "end": {
                                  "line": 698,
                                  "column": 38
                                }
                              },
                              "operator": "!",
                              "prefix": true,
                              "argument": {
                                "type": "CallExpression",
                                "start": 28919,
                                "end": 28940,
                                "loc": {
                                  "start": {
                                    "line": 698,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 698,
                                    "column": 38
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 28919,
                                  "end": 28932,
                                  "loc": {
                                    "start": {
                                      "line": 698,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 698,
                                      "column": 30
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 28919,
                                    "end": 28924,
                                    "loc": {
                                      "start": {
                                        "line": 698,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 698,
                                        "column": 22
                                      }
                                    },
                                    "name": "Array"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 28925,
                                    "end": 28932,
                                    "loc": {
                                      "start": {
                                        "line": 698,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 698,
                                        "column": 30
                                      }
                                    },
                                    "name": "isArray"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 28933,
                                    "end": 28939,
                                    "loc": {
                                      "start": {
                                        "line": 698,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 698,
                                        "column": 37
                                      }
                                    },
                                    "name": "states"
                                  }
                                ]
                              }
                            },
                            "consequent": {
                              "type": "ReturnStatement",
                              "start": 28942,
                              "end": 28977,
                              "loc": {
                                "start": {
                                  "line": 698,
                                  "column": 40
                                },
                                "end": {
                                  "line": 698,
                                  "column": 75
                                }
                              },
                              "argument": {
                                "type": "NewExpression",
                                "start": 28949,
                                "end": 28976,
                                "loc": {
                                  "start": {
                                    "line": 698,
                                    "column": 47
                                  },
                                  "end": {
                                    "line": 698,
                                    "column": 74
                                  }
                                },
                                "callee": {
                                  "type": "Identifier",
                                  "start": 28953,
                                  "end": 28956,
                                  "loc": {
                                    "start": {
                                      "line": 698,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 698,
                                      "column": 54
                                    }
                                  },
                                  "name": "Map"
                                },
                                "arguments": [
                                  {
                                    "type": "ArrayExpression",
                                    "start": 28957,
                                    "end": 28975,
                                    "loc": {
                                      "start": {
                                        "line": 698,
                                        "column": 55
                                      },
                                      "end": {
                                        "line": 698,
                                        "column": 73
                                      }
                                    },
                                    "elements": [
                                      {
                                        "type": "ArrayExpression",
                                        "start": 28958,
                                        "end": 28965,
                                        "loc": {
                                          "start": {
                                            "line": 698,
                                            "column": 56
                                          },
                                          "end": {
                                            "line": 698,
                                            "column": 63
                                          }
                                        },
                                        "elements": [
                                          {
                                            "type": "Literal",
                                            "start": 28959,
                                            "end": 28962,
                                            "loc": {
                                              "start": {
                                                "line": 698,
                                                "column": 57
                                              },
                                              "end": {
                                                "line": 698,
                                                "column": 60
                                              }
                                            },
                                            "value": "x",
                                            "rawValue": "x",
                                            "raw": "'x'"
                                          },
                                          {
                                            "type": "Literal",
                                            "start": 28963,
                                            "end": 28964,
                                            "loc": {
                                              "start": {
                                                "line": 698,
                                                "column": 61
                                              },
                                              "end": {
                                                "line": 698,
                                                "column": 62
                                              }
                                            },
                                            "value": 0,
                                            "rawValue": 0,
                                            "raw": "0"
                                          }
                                        ]
                                      },
                                      {
                                        "type": "ArrayExpression",
                                        "start": 28966,
                                        "end": 28974,
                                        "loc": {
                                          "start": {
                                            "line": 698,
                                            "column": 64
                                          },
                                          "end": {
                                            "line": 698,
                                            "column": 72
                                          }
                                        },
                                        "elements": [
                                          {
                                            "type": "Literal",
                                            "start": 28967,
                                            "end": 28970,
                                            "loc": {
                                              "start": {
                                                "line": 698,
                                                "column": 65
                                              },
                                              "end": {
                                                "line": 698,
                                                "column": 68
                                              }
                                            },
                                            "value": "y",
                                            "rawValue": "y",
                                            "raw": "'y'"
                                          },
                                          {
                                            "type": "Literal",
                                            "start": 28972,
                                            "end": 28973,
                                            "loc": {
                                              "start": {
                                                "line": 698,
                                                "column": 70
                                              },
                                              "end": {
                                                "line": 698,
                                                "column": 71
                                              }
                                            },
                                            "value": 0,
                                            "rawValue": 0,
                                            "raw": "0"
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                ]
                              }
                            },
                            "alternate": null
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 28990,
                            "end": 29131,
                            "loc": {
                              "start": {
                                "line": 699,
                                "column": 12
                              },
                              "end": {
                                "line": 700,
                                "column": 77
                              }
                            },
                            "argument": {
                              "type": "NewExpression",
                              "start": 28997,
                              "end": 29130,
                              "loc": {
                                "start": {
                                  "line": 699,
                                  "column": 19
                                },
                                "end": {
                                  "line": 700,
                                  "column": 76
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 29001,
                                "end": 29004,
                                "loc": {
                                  "start": {
                                    "line": 699,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 699,
                                    "column": 26
                                  }
                                },
                                "name": "Map"
                              },
                              "arguments": [
                                {
                                  "type": "ArrayExpression",
                                  "start": 29005,
                                  "end": 29129,
                                  "loc": {
                                    "start": {
                                      "line": 699,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 700,
                                      "column": 75
                                    }
                                  },
                                  "elements": [
                                    {
                                      "type": "ArrayExpression",
                                      "start": 29006,
                                      "end": 29052,
                                      "loc": {
                                        "start": {
                                          "line": 699,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 699,
                                          "column": 74
                                        }
                                      },
                                      "elements": [
                                        {
                                          "type": "Literal",
                                          "start": 29007,
                                          "end": 29010,
                                          "loc": {
                                            "start": {
                                              "line": 699,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 699,
                                              "column": 32
                                            }
                                          },
                                          "value": "x",
                                          "rawValue": "x",
                                          "raw": "'x'"
                                        },
                                        {
                                          "type": "BinaryExpression",
                                          "start": 29012,
                                          "end": 29051,
                                          "loc": {
                                            "start": {
                                              "line": 699,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 699,
                                              "column": 73
                                            }
                                          },
                                          "left": {
                                            "type": "CallExpression",
                                            "start": 29012,
                                            "end": 29030,
                                            "loc": {
                                              "start": {
                                                "line": 699,
                                                "column": 34
                                              },
                                              "end": {
                                                "line": 699,
                                                "column": 52
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 29012,
                                              "end": 29025,
                                              "loc": {
                                                "start": {
                                                  "line": 699,
                                                  "column": 34
                                                },
                                                "end": {
                                                  "line": 699,
                                                  "column": 47
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 29012,
                                                "end": 29021,
                                                "loc": {
                                                  "start": {
                                                    "line": 699,
                                                    "column": 34
                                                  },
                                                  "end": {
                                                    "line": 699,
                                                    "column": 43
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 29012,
                                                  "end": 29018,
                                                  "loc": {
                                                    "start": {
                                                      "line": 699,
                                                      "column": 34
                                                    },
                                                    "end": {
                                                      "line": 699,
                                                      "column": 40
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 29019,
                                                  "end": 29020,
                                                  "loc": {
                                                    "start": {
                                                      "line": 699,
                                                      "column": 41
                                                    },
                                                    "end": {
                                                      "line": 699,
                                                      "column": 42
                                                    }
                                                  },
                                                  "value": 1,
                                                  "rawValue": 1,
                                                  "raw": "1"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 29022,
                                                "end": 29025,
                                                "loc": {
                                                  "start": {
                                                    "line": 699,
                                                    "column": 44
                                                  },
                                                  "end": {
                                                    "line": 699,
                                                    "column": 47
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 29026,
                                                "end": 29029,
                                                "loc": {
                                                  "start": {
                                                    "line": 699,
                                                    "column": 48
                                                  },
                                                  "end": {
                                                    "line": 699,
                                                    "column": 51
                                                  }
                                                },
                                                "value": "x",
                                                "rawValue": "x",
                                                "raw": "'x'"
                                              }
                                            ]
                                          },
                                          "operator": "-",
                                          "right": {
                                            "type": "CallExpression",
                                            "start": 29033,
                                            "end": 29051,
                                            "loc": {
                                              "start": {
                                                "line": 699,
                                                "column": 55
                                              },
                                              "end": {
                                                "line": 699,
                                                "column": 73
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 29033,
                                              "end": 29046,
                                              "loc": {
                                                "start": {
                                                  "line": 699,
                                                  "column": 55
                                                },
                                                "end": {
                                                  "line": 699,
                                                  "column": 68
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 29033,
                                                "end": 29042,
                                                "loc": {
                                                  "start": {
                                                    "line": 699,
                                                    "column": 55
                                                  },
                                                  "end": {
                                                    "line": 699,
                                                    "column": 64
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 29033,
                                                  "end": 29039,
                                                  "loc": {
                                                    "start": {
                                                      "line": 699,
                                                      "column": 55
                                                    },
                                                    "end": {
                                                      "line": 699,
                                                      "column": 61
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 29040,
                                                  "end": 29041,
                                                  "loc": {
                                                    "start": {
                                                      "line": 699,
                                                      "column": 62
                                                    },
                                                    "end": {
                                                      "line": 699,
                                                      "column": 63
                                                    }
                                                  },
                                                  "value": 0,
                                                  "rawValue": 0,
                                                  "raw": "0"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 29043,
                                                "end": 29046,
                                                "loc": {
                                                  "start": {
                                                    "line": 699,
                                                    "column": 65
                                                  },
                                                  "end": {
                                                    "line": 699,
                                                    "column": 68
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 29047,
                                                "end": 29050,
                                                "loc": {
                                                  "start": {
                                                    "line": 699,
                                                    "column": 69
                                                  },
                                                  "end": {
                                                    "line": 699,
                                                    "column": 72
                                                  }
                                                },
                                                "value": "x",
                                                "rawValue": "x",
                                                "raw": "'x'"
                                              }
                                            ]
                                          }
                                        }
                                      ]
                                    },
                                    {
                                      "type": "ArrayExpression",
                                      "start": 29082,
                                      "end": 29128,
                                      "loc": {
                                        "start": {
                                          "line": 700,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 700,
                                          "column": 74
                                        }
                                      },
                                      "elements": [
                                        {
                                          "type": "Literal",
                                          "start": 29083,
                                          "end": 29086,
                                          "loc": {
                                            "start": {
                                              "line": 700,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 700,
                                              "column": 32
                                            }
                                          },
                                          "value": "y",
                                          "rawValue": "y",
                                          "raw": "'y'"
                                        },
                                        {
                                          "type": "BinaryExpression",
                                          "start": 29088,
                                          "end": 29127,
                                          "loc": {
                                            "start": {
                                              "line": 700,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 700,
                                              "column": 73
                                            }
                                          },
                                          "left": {
                                            "type": "CallExpression",
                                            "start": 29088,
                                            "end": 29106,
                                            "loc": {
                                              "start": {
                                                "line": 700,
                                                "column": 34
                                              },
                                              "end": {
                                                "line": 700,
                                                "column": 52
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 29088,
                                              "end": 29101,
                                              "loc": {
                                                "start": {
                                                  "line": 700,
                                                  "column": 34
                                                },
                                                "end": {
                                                  "line": 700,
                                                  "column": 47
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 29088,
                                                "end": 29097,
                                                "loc": {
                                                  "start": {
                                                    "line": 700,
                                                    "column": 34
                                                  },
                                                  "end": {
                                                    "line": 700,
                                                    "column": 43
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 29088,
                                                  "end": 29094,
                                                  "loc": {
                                                    "start": {
                                                      "line": 700,
                                                      "column": 34
                                                    },
                                                    "end": {
                                                      "line": 700,
                                                      "column": 40
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 29095,
                                                  "end": 29096,
                                                  "loc": {
                                                    "start": {
                                                      "line": 700,
                                                      "column": 41
                                                    },
                                                    "end": {
                                                      "line": 700,
                                                      "column": 42
                                                    }
                                                  },
                                                  "value": 1,
                                                  "rawValue": 1,
                                                  "raw": "1"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 29098,
                                                "end": 29101,
                                                "loc": {
                                                  "start": {
                                                    "line": 700,
                                                    "column": 44
                                                  },
                                                  "end": {
                                                    "line": 700,
                                                    "column": 47
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 29102,
                                                "end": 29105,
                                                "loc": {
                                                  "start": {
                                                    "line": 700,
                                                    "column": 48
                                                  },
                                                  "end": {
                                                    "line": 700,
                                                    "column": 51
                                                  }
                                                },
                                                "value": "y",
                                                "rawValue": "y",
                                                "raw": "'y'"
                                              }
                                            ]
                                          },
                                          "operator": "-",
                                          "right": {
                                            "type": "CallExpression",
                                            "start": 29109,
                                            "end": 29127,
                                            "loc": {
                                              "start": {
                                                "line": 700,
                                                "column": 55
                                              },
                                              "end": {
                                                "line": 700,
                                                "column": 73
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 29109,
                                              "end": 29122,
                                              "loc": {
                                                "start": {
                                                  "line": 700,
                                                  "column": 55
                                                },
                                                "end": {
                                                  "line": 700,
                                                  "column": 68
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 29109,
                                                "end": 29118,
                                                "loc": {
                                                  "start": {
                                                    "line": 700,
                                                    "column": 55
                                                  },
                                                  "end": {
                                                    "line": 700,
                                                    "column": 64
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 29109,
                                                  "end": 29115,
                                                  "loc": {
                                                    "start": {
                                                      "line": 700,
                                                      "column": 55
                                                    },
                                                    "end": {
                                                      "line": 700,
                                                      "column": 61
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 29116,
                                                  "end": 29117,
                                                  "loc": {
                                                    "start": {
                                                      "line": 700,
                                                      "column": 62
                                                    },
                                                    "end": {
                                                      "line": 700,
                                                      "column": 63
                                                    }
                                                  },
                                                  "value": 0,
                                                  "rawValue": 0,
                                                  "raw": "0"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 29119,
                                                "end": 29122,
                                                "loc": {
                                                  "start": {
                                                    "line": 700,
                                                    "column": 65
                                                  },
                                                  "end": {
                                                    "line": 700,
                                                    "column": 68
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 29123,
                                                "end": 29126,
                                                "loc": {
                                                  "start": {
                                                    "line": 700,
                                                    "column": 69
                                                  },
                                                  "end": {
                                                    "line": 700,
                                                    "column": 72
                                                  }
                                                },
                                                "value": "y",
                                                "rawValue": "y",
                                                "raw": "'y'"
                                              }
                                            ]
                                          }
                                        }
                                      ]
                                    }
                                  ]
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "FunctionDeclaration",
                      "start": 29151,
                      "end": 29619,
                      "loc": {
                        "start": {
                          "line": 703,
                          "column": 8
                        },
                        "end": {
                          "line": 710,
                          "column": 9
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 29160,
                        "end": 29171,
                        "loc": {
                          "start": {
                            "line": 703,
                            "column": 17
                          },
                          "end": {
                            "line": 703,
                            "column": 28
                          }
                        },
                        "name": "getLineDiff"
                      },
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 29173,
                          "end": 29179,
                          "loc": {
                            "start": {
                              "line": 703,
                              "column": 30
                            },
                            "end": {
                              "line": 703,
                              "column": 36
                            }
                          },
                          "name": "object"
                        },
                        {
                          "type": "Identifier",
                          "start": 29181,
                          "end": 29187,
                          "loc": {
                            "start": {
                              "line": 703,
                              "column": 38
                            },
                            "end": {
                              "line": 703,
                              "column": 44
                            }
                          },
                          "name": "states"
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "start": 29189,
                        "end": 29619,
                        "loc": {
                          "start": {
                            "line": 703,
                            "column": 46
                          },
                          "end": {
                            "line": 710,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 29203,
                            "end": 29232,
                            "loc": {
                              "start": {
                                "line": 704,
                                "column": 12
                              },
                              "end": {
                                "line": 704,
                                "column": 41
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 29207,
                                "end": 29231,
                                "loc": {
                                  "start": {
                                    "line": 704,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 704,
                                    "column": 40
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 29207,
                                  "end": 29219,
                                  "loc": {
                                    "start": {
                                      "line": 704,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 704,
                                      "column": 28
                                    }
                                  },
                                  "name": "subStateDiff"
                                },
                                "init": {
                                  "type": "NewExpression",
                                  "start": 29222,
                                  "end": 29231,
                                  "loc": {
                                    "start": {
                                      "line": 704,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 704,
                                      "column": 40
                                    }
                                  },
                                  "callee": {
                                    "type": "Identifier",
                                    "start": 29226,
                                    "end": 29229,
                                    "loc": {
                                      "start": {
                                        "line": 704,
                                        "column": 35
                                      },
                                      "end": {
                                        "line": 704,
                                        "column": 38
                                      }
                                    },
                                    "name": "Map"
                                  },
                                  "arguments": []
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "IfStatement",
                            "start": 29245,
                            "end": 29400,
                            "loc": {
                              "start": {
                                "line": 705,
                                "column": 12
                              },
                              "end": {
                                "line": 706,
                                "column": 122
                              }
                            },
                            "test": {
                              "type": "CallExpression",
                              "start": 29249,
                              "end": 29276,
                              "loc": {
                                "start": {
                                  "line": 705,
                                  "column": 16
                                },
                                "end": {
                                  "line": 705,
                                  "column": 43
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 29249,
                                "end": 29262,
                                "loc": {
                                  "start": {
                                    "line": 705,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 705,
                                    "column": 29
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 29249,
                                  "end": 29258,
                                  "loc": {
                                    "start": {
                                      "line": 705,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 705,
                                      "column": 25
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 29249,
                                    "end": 29255,
                                    "loc": {
                                      "start": {
                                        "line": 705,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 705,
                                        "column": 22
                                      }
                                    },
                                    "name": "states"
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 29256,
                                    "end": 29257,
                                    "loc": {
                                      "start": {
                                        "line": 705,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 705,
                                        "column": 24
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 29259,
                                  "end": 29262,
                                  "loc": {
                                    "start": {
                                      "line": 705,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 705,
                                      "column": 29
                                    }
                                  },
                                  "name": "has"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 29263,
                                  "end": 29275,
                                  "loc": {
                                    "start": {
                                      "line": 705,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 705,
                                      "column": 42
                                    }
                                  },
                                  "value": "startPoint",
                                  "rawValue": "startPoint",
                                  "raw": "'startPoint'"
                                }
                              ]
                            },
                            "consequent": {
                              "type": "ExpressionStatement",
                              "start": 29294,
                              "end": 29400,
                              "loc": {
                                "start": {
                                  "line": 706,
                                  "column": 16
                                },
                                "end": {
                                  "line": 706,
                                  "column": 122
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 29294,
                                "end": 29399,
                                "loc": {
                                  "start": {
                                    "line": 706,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 706,
                                    "column": 121
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 29294,
                                  "end": 29310,
                                  "loc": {
                                    "start": {
                                      "line": 706,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 706,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 29294,
                                    "end": 29306,
                                    "loc": {
                                      "start": {
                                        "line": 706,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 706,
                                        "column": 28
                                      }
                                    },
                                    "name": "subStateDiff"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 29307,
                                    "end": 29310,
                                    "loc": {
                                      "start": {
                                        "line": 706,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 706,
                                        "column": 32
                                      }
                                    },
                                    "name": "set"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Literal",
                                    "start": 29311,
                                    "end": 29323,
                                    "loc": {
                                      "start": {
                                        "line": 706,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 706,
                                        "column": 45
                                      }
                                    },
                                    "value": "startPoint",
                                    "rawValue": "startPoint",
                                    "raw": "'startPoint'"
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 29325,
                                    "end": 29398,
                                    "loc": {
                                      "start": {
                                        "line": 706,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 706,
                                        "column": 120
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 29325,
                                      "end": 29337,
                                      "loc": {
                                        "start": {
                                          "line": 706,
                                          "column": 47
                                        },
                                        "end": {
                                          "line": 706,
                                          "column": 59
                                        }
                                      },
                                      "name": "getPointDiff"
                                    },
                                    "arguments": [
                                      {
                                        "type": "ArrayExpression",
                                        "start": 29339,
                                        "end": 29397,
                                        "loc": {
                                          "start": {
                                            "line": 706,
                                            "column": 61
                                          },
                                          "end": {
                                            "line": 706,
                                            "column": 119
                                          }
                                        },
                                        "elements": [
                                          {
                                            "type": "CallExpression",
                                            "start": 29340,
                                            "end": 29367,
                                            "loc": {
                                              "start": {
                                                "line": 706,
                                                "column": 62
                                              },
                                              "end": {
                                                "line": 706,
                                                "column": 89
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 29340,
                                              "end": 29353,
                                              "loc": {
                                                "start": {
                                                  "line": 706,
                                                  "column": 62
                                                },
                                                "end": {
                                                  "line": 706,
                                                  "column": 75
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 29340,
                                                "end": 29349,
                                                "loc": {
                                                  "start": {
                                                    "line": 706,
                                                    "column": 62
                                                  },
                                                  "end": {
                                                    "line": 706,
                                                    "column": 71
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 29340,
                                                  "end": 29346,
                                                  "loc": {
                                                    "start": {
                                                      "line": 706,
                                                      "column": 62
                                                    },
                                                    "end": {
                                                      "line": 706,
                                                      "column": 68
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 29347,
                                                  "end": 29348,
                                                  "loc": {
                                                    "start": {
                                                      "line": 706,
                                                      "column": 69
                                                    },
                                                    "end": {
                                                      "line": 706,
                                                      "column": 70
                                                    }
                                                  },
                                                  "value": 0,
                                                  "rawValue": 0,
                                                  "raw": "0"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 29350,
                                                "end": 29353,
                                                "loc": {
                                                  "start": {
                                                    "line": 706,
                                                    "column": 72
                                                  },
                                                  "end": {
                                                    "line": 706,
                                                    "column": 75
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 29354,
                                                "end": 29366,
                                                "loc": {
                                                  "start": {
                                                    "line": 706,
                                                    "column": 76
                                                  },
                                                  "end": {
                                                    "line": 706,
                                                    "column": 88
                                                  }
                                                },
                                                "value": "startPoint",
                                                "rawValue": "startPoint",
                                                "raw": "'startPoint'"
                                              }
                                            ]
                                          },
                                          {
                                            "type": "CallExpression",
                                            "start": 29369,
                                            "end": 29396,
                                            "loc": {
                                              "start": {
                                                "line": 706,
                                                "column": 91
                                              },
                                              "end": {
                                                "line": 706,
                                                "column": 118
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 29369,
                                              "end": 29382,
                                              "loc": {
                                                "start": {
                                                  "line": 706,
                                                  "column": 91
                                                },
                                                "end": {
                                                  "line": 706,
                                                  "column": 104
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 29369,
                                                "end": 29378,
                                                "loc": {
                                                  "start": {
                                                    "line": 706,
                                                    "column": 91
                                                  },
                                                  "end": {
                                                    "line": 706,
                                                    "column": 100
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 29369,
                                                  "end": 29375,
                                                  "loc": {
                                                    "start": {
                                                      "line": 706,
                                                      "column": 91
                                                    },
                                                    "end": {
                                                      "line": 706,
                                                      "column": 97
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 29376,
                                                  "end": 29377,
                                                  "loc": {
                                                    "start": {
                                                      "line": 706,
                                                      "column": 98
                                                    },
                                                    "end": {
                                                      "line": 706,
                                                      "column": 99
                                                    }
                                                  },
                                                  "value": 1,
                                                  "rawValue": 1,
                                                  "raw": "1"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 29379,
                                                "end": 29382,
                                                "loc": {
                                                  "start": {
                                                    "line": 706,
                                                    "column": 101
                                                  },
                                                  "end": {
                                                    "line": 706,
                                                    "column": 104
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 29383,
                                                "end": 29395,
                                                "loc": {
                                                  "start": {
                                                    "line": 706,
                                                    "column": 105
                                                  },
                                                  "end": {
                                                    "line": 706,
                                                    "column": 117
                                                  }
                                                },
                                                "value": "startPoint",
                                                "rawValue": "startPoint",
                                                "raw": "'startPoint'"
                                              }
                                            ]
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                ]
                              }
                            },
                            "alternate": null
                          },
                          {
                            "type": "IfStatement",
                            "start": 29413,
                            "end": 29560,
                            "loc": {
                              "start": {
                                "line": 707,
                                "column": 12
                              },
                              "end": {
                                "line": 708,
                                "column": 116
                              }
                            },
                            "test": {
                              "type": "CallExpression",
                              "start": 29417,
                              "end": 29442,
                              "loc": {
                                "start": {
                                  "line": 707,
                                  "column": 16
                                },
                                "end": {
                                  "line": 707,
                                  "column": 41
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 29417,
                                "end": 29430,
                                "loc": {
                                  "start": {
                                    "line": 707,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 707,
                                    "column": 29
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 29417,
                                  "end": 29426,
                                  "loc": {
                                    "start": {
                                      "line": 707,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 707,
                                      "column": 25
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 29417,
                                    "end": 29423,
                                    "loc": {
                                      "start": {
                                        "line": 707,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 707,
                                        "column": 22
                                      }
                                    },
                                    "name": "states"
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 29424,
                                    "end": 29425,
                                    "loc": {
                                      "start": {
                                        "line": 707,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 707,
                                        "column": 24
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 29427,
                                  "end": 29430,
                                  "loc": {
                                    "start": {
                                      "line": 707,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 707,
                                      "column": 29
                                    }
                                  },
                                  "name": "has"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 29431,
                                  "end": 29441,
                                  "loc": {
                                    "start": {
                                      "line": 707,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 707,
                                      "column": 40
                                    }
                                  },
                                  "value": "endPoint",
                                  "rawValue": "endPoint",
                                  "raw": "'endPoint'"
                                }
                              ]
                            },
                            "consequent": {
                              "type": "ExpressionStatement",
                              "start": 29460,
                              "end": 29560,
                              "loc": {
                                "start": {
                                  "line": 708,
                                  "column": 16
                                },
                                "end": {
                                  "line": 708,
                                  "column": 116
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 29460,
                                "end": 29559,
                                "loc": {
                                  "start": {
                                    "line": 708,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 708,
                                    "column": 115
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 29460,
                                  "end": 29476,
                                  "loc": {
                                    "start": {
                                      "line": 708,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 708,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 29460,
                                    "end": 29472,
                                    "loc": {
                                      "start": {
                                        "line": 708,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 708,
                                        "column": 28
                                      }
                                    },
                                    "name": "subStateDiff"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 29473,
                                    "end": 29476,
                                    "loc": {
                                      "start": {
                                        "line": 708,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 708,
                                        "column": 32
                                      }
                                    },
                                    "name": "set"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Literal",
                                    "start": 29477,
                                    "end": 29487,
                                    "loc": {
                                      "start": {
                                        "line": 708,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 708,
                                        "column": 43
                                      }
                                    },
                                    "value": "endPoint",
                                    "rawValue": "endPoint",
                                    "raw": "'endPoint'"
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 29489,
                                    "end": 29558,
                                    "loc": {
                                      "start": {
                                        "line": 708,
                                        "column": 45
                                      },
                                      "end": {
                                        "line": 708,
                                        "column": 114
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 29489,
                                      "end": 29501,
                                      "loc": {
                                        "start": {
                                          "line": 708,
                                          "column": 45
                                        },
                                        "end": {
                                          "line": 708,
                                          "column": 57
                                        }
                                      },
                                      "name": "getPointDiff"
                                    },
                                    "arguments": [
                                      {
                                        "type": "ArrayExpression",
                                        "start": 29503,
                                        "end": 29557,
                                        "loc": {
                                          "start": {
                                            "line": 708,
                                            "column": 59
                                          },
                                          "end": {
                                            "line": 708,
                                            "column": 113
                                          }
                                        },
                                        "elements": [
                                          {
                                            "type": "CallExpression",
                                            "start": 29504,
                                            "end": 29529,
                                            "loc": {
                                              "start": {
                                                "line": 708,
                                                "column": 60
                                              },
                                              "end": {
                                                "line": 708,
                                                "column": 85
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 29504,
                                              "end": 29517,
                                              "loc": {
                                                "start": {
                                                  "line": 708,
                                                  "column": 60
                                                },
                                                "end": {
                                                  "line": 708,
                                                  "column": 73
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 29504,
                                                "end": 29513,
                                                "loc": {
                                                  "start": {
                                                    "line": 708,
                                                    "column": 60
                                                  },
                                                  "end": {
                                                    "line": 708,
                                                    "column": 69
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 29504,
                                                  "end": 29510,
                                                  "loc": {
                                                    "start": {
                                                      "line": 708,
                                                      "column": 60
                                                    },
                                                    "end": {
                                                      "line": 708,
                                                      "column": 66
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 29511,
                                                  "end": 29512,
                                                  "loc": {
                                                    "start": {
                                                      "line": 708,
                                                      "column": 67
                                                    },
                                                    "end": {
                                                      "line": 708,
                                                      "column": 68
                                                    }
                                                  },
                                                  "value": 0,
                                                  "rawValue": 0,
                                                  "raw": "0"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 29514,
                                                "end": 29517,
                                                "loc": {
                                                  "start": {
                                                    "line": 708,
                                                    "column": 70
                                                  },
                                                  "end": {
                                                    "line": 708,
                                                    "column": 73
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 29518,
                                                "end": 29528,
                                                "loc": {
                                                  "start": {
                                                    "line": 708,
                                                    "column": 74
                                                  },
                                                  "end": {
                                                    "line": 708,
                                                    "column": 84
                                                  }
                                                },
                                                "value": "endPoint",
                                                "rawValue": "endPoint",
                                                "raw": "'endPoint'"
                                              }
                                            ]
                                          },
                                          {
                                            "type": "CallExpression",
                                            "start": 29531,
                                            "end": 29556,
                                            "loc": {
                                              "start": {
                                                "line": 708,
                                                "column": 87
                                              },
                                              "end": {
                                                "line": 708,
                                                "column": 112
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 29531,
                                              "end": 29544,
                                              "loc": {
                                                "start": {
                                                  "line": 708,
                                                  "column": 87
                                                },
                                                "end": {
                                                  "line": 708,
                                                  "column": 100
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 29531,
                                                "end": 29540,
                                                "loc": {
                                                  "start": {
                                                    "line": 708,
                                                    "column": 87
                                                  },
                                                  "end": {
                                                    "line": 708,
                                                    "column": 96
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 29531,
                                                  "end": 29537,
                                                  "loc": {
                                                    "start": {
                                                      "line": 708,
                                                      "column": 87
                                                    },
                                                    "end": {
                                                      "line": 708,
                                                      "column": 93
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 29538,
                                                  "end": 29539,
                                                  "loc": {
                                                    "start": {
                                                      "line": 708,
                                                      "column": 94
                                                    },
                                                    "end": {
                                                      "line": 708,
                                                      "column": 95
                                                    }
                                                  },
                                                  "value": 1,
                                                  "rawValue": 1,
                                                  "raw": "1"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 29541,
                                                "end": 29544,
                                                "loc": {
                                                  "start": {
                                                    "line": 708,
                                                    "column": 97
                                                  },
                                                  "end": {
                                                    "line": 708,
                                                    "column": 100
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 29545,
                                                "end": 29555,
                                                "loc": {
                                                  "start": {
                                                    "line": 708,
                                                    "column": 101
                                                  },
                                                  "end": {
                                                    "line": 708,
                                                    "column": 111
                                                  }
                                                },
                                                "value": "endPoint",
                                                "rawValue": "endPoint",
                                                "raw": "'endPoint'"
                                              }
                                            ]
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                ]
                              }
                            },
                            "alternate": null
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 29573,
                            "end": 29609,
                            "loc": {
                              "start": {
                                "line": 709,
                                "column": 12
                              },
                              "end": {
                                "line": 709,
                                "column": 48
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 29573,
                              "end": 29608,
                              "loc": {
                                "start": {
                                  "line": 709,
                                  "column": 12
                                },
                                "end": {
                                  "line": 709,
                                  "column": 47
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 29573,
                                "end": 29586,
                                "loc": {
                                  "start": {
                                    "line": 709,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 709,
                                    "column": 25
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 29573,
                                  "end": 29582,
                                  "loc": {
                                    "start": {
                                      "line": 709,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 709,
                                      "column": 21
                                    }
                                  },
                                  "name": "stateDiff"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 29583,
                                  "end": 29586,
                                  "loc": {
                                    "start": {
                                      "line": 709,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 709,
                                      "column": 25
                                    }
                                  },
                                  "name": "set"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 29587,
                                  "end": 29593,
                                  "loc": {
                                    "start": {
                                      "line": 709,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 709,
                                      "column": 32
                                    }
                                  },
                                  "name": "object"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 29595,
                                  "end": 29607,
                                  "loc": {
                                    "start": {
                                      "line": 709,
                                      "column": 34
                                    },
                                    "end": {
                                      "line": 709,
                                      "column": 46
                                    }
                                  },
                                  "name": "subStateDiff"
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "FunctionDeclaration",
                      "start": 29629,
                      "end": 30368,
                      "loc": {
                        "start": {
                          "line": 712,
                          "column": 8
                        },
                        "end": {
                          "line": 724,
                          "column": 9
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 29638,
                        "end": 29648,
                        "loc": {
                          "start": {
                            "line": 712,
                            "column": 17
                          },
                          "end": {
                            "line": 712,
                            "column": 27
                          }
                        },
                        "name": "getArcDiff"
                      },
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 29650,
                          "end": 29656,
                          "loc": {
                            "start": {
                              "line": 712,
                              "column": 29
                            },
                            "end": {
                              "line": 712,
                              "column": 35
                            }
                          },
                          "name": "object"
                        },
                        {
                          "type": "Identifier",
                          "start": 29658,
                          "end": 29664,
                          "loc": {
                            "start": {
                              "line": 712,
                              "column": 37
                            },
                            "end": {
                              "line": 712,
                              "column": 43
                            }
                          },
                          "name": "states"
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "start": 29666,
                        "end": 30368,
                        "loc": {
                          "start": {
                            "line": 712,
                            "column": 45
                          },
                          "end": {
                            "line": 724,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 29681,
                            "end": 29710,
                            "loc": {
                              "start": {
                                "line": 714,
                                "column": 12
                              },
                              "end": {
                                "line": 714,
                                "column": 41
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 29685,
                                "end": 29709,
                                "loc": {
                                  "start": {
                                    "line": 714,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 714,
                                    "column": 40
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 29685,
                                  "end": 29697,
                                  "loc": {
                                    "start": {
                                      "line": 714,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 714,
                                      "column": 28
                                    }
                                  },
                                  "name": "subStateDiff"
                                },
                                "init": {
                                  "type": "NewExpression",
                                  "start": 29700,
                                  "end": 29709,
                                  "loc": {
                                    "start": {
                                      "line": 714,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 714,
                                      "column": 40
                                    }
                                  },
                                  "callee": {
                                    "type": "Identifier",
                                    "start": 29704,
                                    "end": 29707,
                                    "loc": {
                                      "start": {
                                        "line": 714,
                                        "column": 35
                                      },
                                      "end": {
                                        "line": 714,
                                        "column": 38
                                      }
                                    },
                                    "name": "Map"
                                  },
                                  "arguments": []
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "IfStatement",
                            "start": 29723,
                            "end": 29878,
                            "loc": {
                              "start": {
                                "line": 715,
                                "column": 12
                              },
                              "end": {
                                "line": 716,
                                "column": 122
                              }
                            },
                            "test": {
                              "type": "CallExpression",
                              "start": 29727,
                              "end": 29754,
                              "loc": {
                                "start": {
                                  "line": 715,
                                  "column": 16
                                },
                                "end": {
                                  "line": 715,
                                  "column": 43
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 29727,
                                "end": 29740,
                                "loc": {
                                  "start": {
                                    "line": 715,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 715,
                                    "column": 29
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 29727,
                                  "end": 29736,
                                  "loc": {
                                    "start": {
                                      "line": 715,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 715,
                                      "column": 25
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 29727,
                                    "end": 29733,
                                    "loc": {
                                      "start": {
                                        "line": 715,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 715,
                                        "column": 22
                                      }
                                    },
                                    "name": "states"
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 29734,
                                    "end": 29735,
                                    "loc": {
                                      "start": {
                                        "line": 715,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 715,
                                        "column": 24
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 29737,
                                  "end": 29740,
                                  "loc": {
                                    "start": {
                                      "line": 715,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 715,
                                      "column": 29
                                    }
                                  },
                                  "name": "has"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 29741,
                                  "end": 29753,
                                  "loc": {
                                    "start": {
                                      "line": 715,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 715,
                                      "column": 42
                                    }
                                  },
                                  "value": "startPoint",
                                  "rawValue": "startPoint",
                                  "raw": "'startPoint'"
                                }
                              ]
                            },
                            "consequent": {
                              "type": "ExpressionStatement",
                              "start": 29772,
                              "end": 29878,
                              "loc": {
                                "start": {
                                  "line": 716,
                                  "column": 16
                                },
                                "end": {
                                  "line": 716,
                                  "column": 122
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 29772,
                                "end": 29877,
                                "loc": {
                                  "start": {
                                    "line": 716,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 716,
                                    "column": 121
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 29772,
                                  "end": 29788,
                                  "loc": {
                                    "start": {
                                      "line": 716,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 716,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 29772,
                                    "end": 29784,
                                    "loc": {
                                      "start": {
                                        "line": 716,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 716,
                                        "column": 28
                                      }
                                    },
                                    "name": "subStateDiff"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 29785,
                                    "end": 29788,
                                    "loc": {
                                      "start": {
                                        "line": 716,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 716,
                                        "column": 32
                                      }
                                    },
                                    "name": "set"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Literal",
                                    "start": 29789,
                                    "end": 29801,
                                    "loc": {
                                      "start": {
                                        "line": 716,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 716,
                                        "column": 45
                                      }
                                    },
                                    "value": "startPoint",
                                    "rawValue": "startPoint",
                                    "raw": "'startPoint'"
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 29803,
                                    "end": 29876,
                                    "loc": {
                                      "start": {
                                        "line": 716,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 716,
                                        "column": 120
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 29803,
                                      "end": 29815,
                                      "loc": {
                                        "start": {
                                          "line": 716,
                                          "column": 47
                                        },
                                        "end": {
                                          "line": 716,
                                          "column": 59
                                        }
                                      },
                                      "name": "getPointDiff"
                                    },
                                    "arguments": [
                                      {
                                        "type": "ArrayExpression",
                                        "start": 29817,
                                        "end": 29875,
                                        "loc": {
                                          "start": {
                                            "line": 716,
                                            "column": 61
                                          },
                                          "end": {
                                            "line": 716,
                                            "column": 119
                                          }
                                        },
                                        "elements": [
                                          {
                                            "type": "CallExpression",
                                            "start": 29818,
                                            "end": 29845,
                                            "loc": {
                                              "start": {
                                                "line": 716,
                                                "column": 62
                                              },
                                              "end": {
                                                "line": 716,
                                                "column": 89
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 29818,
                                              "end": 29831,
                                              "loc": {
                                                "start": {
                                                  "line": 716,
                                                  "column": 62
                                                },
                                                "end": {
                                                  "line": 716,
                                                  "column": 75
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 29818,
                                                "end": 29827,
                                                "loc": {
                                                  "start": {
                                                    "line": 716,
                                                    "column": 62
                                                  },
                                                  "end": {
                                                    "line": 716,
                                                    "column": 71
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 29818,
                                                  "end": 29824,
                                                  "loc": {
                                                    "start": {
                                                      "line": 716,
                                                      "column": 62
                                                    },
                                                    "end": {
                                                      "line": 716,
                                                      "column": 68
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 29825,
                                                  "end": 29826,
                                                  "loc": {
                                                    "start": {
                                                      "line": 716,
                                                      "column": 69
                                                    },
                                                    "end": {
                                                      "line": 716,
                                                      "column": 70
                                                    }
                                                  },
                                                  "value": 0,
                                                  "rawValue": 0,
                                                  "raw": "0"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 29828,
                                                "end": 29831,
                                                "loc": {
                                                  "start": {
                                                    "line": 716,
                                                    "column": 72
                                                  },
                                                  "end": {
                                                    "line": 716,
                                                    "column": 75
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 29832,
                                                "end": 29844,
                                                "loc": {
                                                  "start": {
                                                    "line": 716,
                                                    "column": 76
                                                  },
                                                  "end": {
                                                    "line": 716,
                                                    "column": 88
                                                  }
                                                },
                                                "value": "startPoint",
                                                "rawValue": "startPoint",
                                                "raw": "'startPoint'"
                                              }
                                            ]
                                          },
                                          {
                                            "type": "CallExpression",
                                            "start": 29847,
                                            "end": 29874,
                                            "loc": {
                                              "start": {
                                                "line": 716,
                                                "column": 91
                                              },
                                              "end": {
                                                "line": 716,
                                                "column": 118
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 29847,
                                              "end": 29860,
                                              "loc": {
                                                "start": {
                                                  "line": 716,
                                                  "column": 91
                                                },
                                                "end": {
                                                  "line": 716,
                                                  "column": 104
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 29847,
                                                "end": 29856,
                                                "loc": {
                                                  "start": {
                                                    "line": 716,
                                                    "column": 91
                                                  },
                                                  "end": {
                                                    "line": 716,
                                                    "column": 100
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 29847,
                                                  "end": 29853,
                                                  "loc": {
                                                    "start": {
                                                      "line": 716,
                                                      "column": 91
                                                    },
                                                    "end": {
                                                      "line": 716,
                                                      "column": 97
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 29854,
                                                  "end": 29855,
                                                  "loc": {
                                                    "start": {
                                                      "line": 716,
                                                      "column": 98
                                                    },
                                                    "end": {
                                                      "line": 716,
                                                      "column": 99
                                                    }
                                                  },
                                                  "value": 1,
                                                  "rawValue": 1,
                                                  "raw": "1"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 29857,
                                                "end": 29860,
                                                "loc": {
                                                  "start": {
                                                    "line": 716,
                                                    "column": 101
                                                  },
                                                  "end": {
                                                    "line": 716,
                                                    "column": 104
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 29861,
                                                "end": 29873,
                                                "loc": {
                                                  "start": {
                                                    "line": 716,
                                                    "column": 105
                                                  },
                                                  "end": {
                                                    "line": 716,
                                                    "column": 117
                                                  }
                                                },
                                                "value": "startPoint",
                                                "rawValue": "startPoint",
                                                "raw": "'startPoint'"
                                              }
                                            ]
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                ]
                              }
                            },
                            "alternate": null
                          },
                          {
                            "type": "IfStatement",
                            "start": 29891,
                            "end": 30038,
                            "loc": {
                              "start": {
                                "line": 717,
                                "column": 12
                              },
                              "end": {
                                "line": 718,
                                "column": 116
                              }
                            },
                            "test": {
                              "type": "CallExpression",
                              "start": 29895,
                              "end": 29920,
                              "loc": {
                                "start": {
                                  "line": 717,
                                  "column": 16
                                },
                                "end": {
                                  "line": 717,
                                  "column": 41
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 29895,
                                "end": 29908,
                                "loc": {
                                  "start": {
                                    "line": 717,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 717,
                                    "column": 29
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 29895,
                                  "end": 29904,
                                  "loc": {
                                    "start": {
                                      "line": 717,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 717,
                                      "column": 25
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 29895,
                                    "end": 29901,
                                    "loc": {
                                      "start": {
                                        "line": 717,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 717,
                                        "column": 22
                                      }
                                    },
                                    "name": "states"
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 29902,
                                    "end": 29903,
                                    "loc": {
                                      "start": {
                                        "line": 717,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 717,
                                        "column": 24
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 29905,
                                  "end": 29908,
                                  "loc": {
                                    "start": {
                                      "line": 717,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 717,
                                      "column": 29
                                    }
                                  },
                                  "name": "has"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 29909,
                                  "end": 29919,
                                  "loc": {
                                    "start": {
                                      "line": 717,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 717,
                                      "column": 40
                                    }
                                  },
                                  "value": "endPoint",
                                  "rawValue": "endPoint",
                                  "raw": "'endPoint'"
                                }
                              ]
                            },
                            "consequent": {
                              "type": "ExpressionStatement",
                              "start": 29938,
                              "end": 30038,
                              "loc": {
                                "start": {
                                  "line": 718,
                                  "column": 16
                                },
                                "end": {
                                  "line": 718,
                                  "column": 116
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 29938,
                                "end": 30037,
                                "loc": {
                                  "start": {
                                    "line": 718,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 718,
                                    "column": 115
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 29938,
                                  "end": 29954,
                                  "loc": {
                                    "start": {
                                      "line": 718,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 718,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 29938,
                                    "end": 29950,
                                    "loc": {
                                      "start": {
                                        "line": 718,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 718,
                                        "column": 28
                                      }
                                    },
                                    "name": "subStateDiff"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 29951,
                                    "end": 29954,
                                    "loc": {
                                      "start": {
                                        "line": 718,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 718,
                                        "column": 32
                                      }
                                    },
                                    "name": "set"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Literal",
                                    "start": 29955,
                                    "end": 29965,
                                    "loc": {
                                      "start": {
                                        "line": 718,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 718,
                                        "column": 43
                                      }
                                    },
                                    "value": "endPoint",
                                    "rawValue": "endPoint",
                                    "raw": "'endPoint'"
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 29967,
                                    "end": 30036,
                                    "loc": {
                                      "start": {
                                        "line": 718,
                                        "column": 45
                                      },
                                      "end": {
                                        "line": 718,
                                        "column": 114
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 29967,
                                      "end": 29979,
                                      "loc": {
                                        "start": {
                                          "line": 718,
                                          "column": 45
                                        },
                                        "end": {
                                          "line": 718,
                                          "column": 57
                                        }
                                      },
                                      "name": "getPointDiff"
                                    },
                                    "arguments": [
                                      {
                                        "type": "ArrayExpression",
                                        "start": 29981,
                                        "end": 30035,
                                        "loc": {
                                          "start": {
                                            "line": 718,
                                            "column": 59
                                          },
                                          "end": {
                                            "line": 718,
                                            "column": 113
                                          }
                                        },
                                        "elements": [
                                          {
                                            "type": "CallExpression",
                                            "start": 29982,
                                            "end": 30007,
                                            "loc": {
                                              "start": {
                                                "line": 718,
                                                "column": 60
                                              },
                                              "end": {
                                                "line": 718,
                                                "column": 85
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 29982,
                                              "end": 29995,
                                              "loc": {
                                                "start": {
                                                  "line": 718,
                                                  "column": 60
                                                },
                                                "end": {
                                                  "line": 718,
                                                  "column": 73
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 29982,
                                                "end": 29991,
                                                "loc": {
                                                  "start": {
                                                    "line": 718,
                                                    "column": 60
                                                  },
                                                  "end": {
                                                    "line": 718,
                                                    "column": 69
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 29982,
                                                  "end": 29988,
                                                  "loc": {
                                                    "start": {
                                                      "line": 718,
                                                      "column": 60
                                                    },
                                                    "end": {
                                                      "line": 718,
                                                      "column": 66
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 29989,
                                                  "end": 29990,
                                                  "loc": {
                                                    "start": {
                                                      "line": 718,
                                                      "column": 67
                                                    },
                                                    "end": {
                                                      "line": 718,
                                                      "column": 68
                                                    }
                                                  },
                                                  "value": 0,
                                                  "rawValue": 0,
                                                  "raw": "0"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 29992,
                                                "end": 29995,
                                                "loc": {
                                                  "start": {
                                                    "line": 718,
                                                    "column": 70
                                                  },
                                                  "end": {
                                                    "line": 718,
                                                    "column": 73
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 29996,
                                                "end": 30006,
                                                "loc": {
                                                  "start": {
                                                    "line": 718,
                                                    "column": 74
                                                  },
                                                  "end": {
                                                    "line": 718,
                                                    "column": 84
                                                  }
                                                },
                                                "value": "endPoint",
                                                "rawValue": "endPoint",
                                                "raw": "'endPoint'"
                                              }
                                            ]
                                          },
                                          {
                                            "type": "CallExpression",
                                            "start": 30009,
                                            "end": 30034,
                                            "loc": {
                                              "start": {
                                                "line": 718,
                                                "column": 87
                                              },
                                              "end": {
                                                "line": 718,
                                                "column": 112
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 30009,
                                              "end": 30022,
                                              "loc": {
                                                "start": {
                                                  "line": 718,
                                                  "column": 87
                                                },
                                                "end": {
                                                  "line": 718,
                                                  "column": 100
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 30009,
                                                "end": 30018,
                                                "loc": {
                                                  "start": {
                                                    "line": 718,
                                                    "column": 87
                                                  },
                                                  "end": {
                                                    "line": 718,
                                                    "column": 96
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 30009,
                                                  "end": 30015,
                                                  "loc": {
                                                    "start": {
                                                      "line": 718,
                                                      "column": 87
                                                    },
                                                    "end": {
                                                      "line": 718,
                                                      "column": 93
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 30016,
                                                  "end": 30017,
                                                  "loc": {
                                                    "start": {
                                                      "line": 718,
                                                      "column": 94
                                                    },
                                                    "end": {
                                                      "line": 718,
                                                      "column": 95
                                                    }
                                                  },
                                                  "value": 1,
                                                  "rawValue": 1,
                                                  "raw": "1"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 30019,
                                                "end": 30022,
                                                "loc": {
                                                  "start": {
                                                    "line": 718,
                                                    "column": 97
                                                  },
                                                  "end": {
                                                    "line": 718,
                                                    "column": 100
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 30023,
                                                "end": 30033,
                                                "loc": {
                                                  "start": {
                                                    "line": 718,
                                                    "column": 101
                                                  },
                                                  "end": {
                                                    "line": 718,
                                                    "column": 111
                                                  }
                                                },
                                                "value": "endPoint",
                                                "rawValue": "endPoint",
                                                "raw": "'endPoint'"
                                              }
                                            ]
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                ]
                              }
                            },
                            "alternate": null
                          },
                          {
                            "type": "IfStatement",
                            "start": 30051,
                            "end": 30190,
                            "loc": {
                              "start": {
                                "line": 719,
                                "column": 12
                              },
                              "end": {
                                "line": 720,
                                "column": 110
                              }
                            },
                            "test": {
                              "type": "CallExpression",
                              "start": 30055,
                              "end": 30078,
                              "loc": {
                                "start": {
                                  "line": 719,
                                  "column": 16
                                },
                                "end": {
                                  "line": 719,
                                  "column": 39
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 30055,
                                "end": 30068,
                                "loc": {
                                  "start": {
                                    "line": 719,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 719,
                                    "column": 29
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 30055,
                                  "end": 30064,
                                  "loc": {
                                    "start": {
                                      "line": 719,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 719,
                                      "column": 25
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 30055,
                                    "end": 30061,
                                    "loc": {
                                      "start": {
                                        "line": 719,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 719,
                                        "column": 22
                                      }
                                    },
                                    "name": "states"
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 30062,
                                    "end": 30063,
                                    "loc": {
                                      "start": {
                                        "line": 719,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 719,
                                        "column": 24
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 30065,
                                  "end": 30068,
                                  "loc": {
                                    "start": {
                                      "line": 719,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 719,
                                      "column": 29
                                    }
                                  },
                                  "name": "has"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 30069,
                                  "end": 30077,
                                  "loc": {
                                    "start": {
                                      "line": 719,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 719,
                                      "column": 38
                                    }
                                  },
                                  "value": "center",
                                  "rawValue": "center",
                                  "raw": "'center'"
                                }
                              ]
                            },
                            "consequent": {
                              "type": "ExpressionStatement",
                              "start": 30096,
                              "end": 30190,
                              "loc": {
                                "start": {
                                  "line": 720,
                                  "column": 16
                                },
                                "end": {
                                  "line": 720,
                                  "column": 110
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 30096,
                                "end": 30189,
                                "loc": {
                                  "start": {
                                    "line": 720,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 720,
                                    "column": 109
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 30096,
                                  "end": 30112,
                                  "loc": {
                                    "start": {
                                      "line": 720,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 720,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 30096,
                                    "end": 30108,
                                    "loc": {
                                      "start": {
                                        "line": 720,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 720,
                                        "column": 28
                                      }
                                    },
                                    "name": "subStateDiff"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 30109,
                                    "end": 30112,
                                    "loc": {
                                      "start": {
                                        "line": 720,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 720,
                                        "column": 32
                                      }
                                    },
                                    "name": "set"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Literal",
                                    "start": 30113,
                                    "end": 30121,
                                    "loc": {
                                      "start": {
                                        "line": 720,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 720,
                                        "column": 41
                                      }
                                    },
                                    "value": "center",
                                    "rawValue": "center",
                                    "raw": "'center'"
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 30123,
                                    "end": 30188,
                                    "loc": {
                                      "start": {
                                        "line": 720,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 720,
                                        "column": 108
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 30123,
                                      "end": 30135,
                                      "loc": {
                                        "start": {
                                          "line": 720,
                                          "column": 43
                                        },
                                        "end": {
                                          "line": 720,
                                          "column": 55
                                        }
                                      },
                                      "name": "getPointDiff"
                                    },
                                    "arguments": [
                                      {
                                        "type": "ArrayExpression",
                                        "start": 30137,
                                        "end": 30187,
                                        "loc": {
                                          "start": {
                                            "line": 720,
                                            "column": 57
                                          },
                                          "end": {
                                            "line": 720,
                                            "column": 107
                                          }
                                        },
                                        "elements": [
                                          {
                                            "type": "CallExpression",
                                            "start": 30138,
                                            "end": 30161,
                                            "loc": {
                                              "start": {
                                                "line": 720,
                                                "column": 58
                                              },
                                              "end": {
                                                "line": 720,
                                                "column": 81
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 30138,
                                              "end": 30151,
                                              "loc": {
                                                "start": {
                                                  "line": 720,
                                                  "column": 58
                                                },
                                                "end": {
                                                  "line": 720,
                                                  "column": 71
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 30138,
                                                "end": 30147,
                                                "loc": {
                                                  "start": {
                                                    "line": 720,
                                                    "column": 58
                                                  },
                                                  "end": {
                                                    "line": 720,
                                                    "column": 67
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 30138,
                                                  "end": 30144,
                                                  "loc": {
                                                    "start": {
                                                      "line": 720,
                                                      "column": 58
                                                    },
                                                    "end": {
                                                      "line": 720,
                                                      "column": 64
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 30145,
                                                  "end": 30146,
                                                  "loc": {
                                                    "start": {
                                                      "line": 720,
                                                      "column": 65
                                                    },
                                                    "end": {
                                                      "line": 720,
                                                      "column": 66
                                                    }
                                                  },
                                                  "value": 0,
                                                  "rawValue": 0,
                                                  "raw": "0"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 30148,
                                                "end": 30151,
                                                "loc": {
                                                  "start": {
                                                    "line": 720,
                                                    "column": 68
                                                  },
                                                  "end": {
                                                    "line": 720,
                                                    "column": 71
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 30152,
                                                "end": 30160,
                                                "loc": {
                                                  "start": {
                                                    "line": 720,
                                                    "column": 72
                                                  },
                                                  "end": {
                                                    "line": 720,
                                                    "column": 80
                                                  }
                                                },
                                                "value": "center",
                                                "rawValue": "center",
                                                "raw": "'center'"
                                              }
                                            ]
                                          },
                                          {
                                            "type": "CallExpression",
                                            "start": 30163,
                                            "end": 30186,
                                            "loc": {
                                              "start": {
                                                "line": 720,
                                                "column": 83
                                              },
                                              "end": {
                                                "line": 720,
                                                "column": 106
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 30163,
                                              "end": 30176,
                                              "loc": {
                                                "start": {
                                                  "line": 720,
                                                  "column": 83
                                                },
                                                "end": {
                                                  "line": 720,
                                                  "column": 96
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 30163,
                                                "end": 30172,
                                                "loc": {
                                                  "start": {
                                                    "line": 720,
                                                    "column": 83
                                                  },
                                                  "end": {
                                                    "line": 720,
                                                    "column": 92
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 30163,
                                                  "end": 30169,
                                                  "loc": {
                                                    "start": {
                                                      "line": 720,
                                                      "column": 83
                                                    },
                                                    "end": {
                                                      "line": 720,
                                                      "column": 89
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 30170,
                                                  "end": 30171,
                                                  "loc": {
                                                    "start": {
                                                      "line": 720,
                                                      "column": 90
                                                    },
                                                    "end": {
                                                      "line": 720,
                                                      "column": 91
                                                    }
                                                  },
                                                  "value": 1,
                                                  "rawValue": 1,
                                                  "raw": "1"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 30173,
                                                "end": 30176,
                                                "loc": {
                                                  "start": {
                                                    "line": 720,
                                                    "column": 93
                                                  },
                                                  "end": {
                                                    "line": 720,
                                                    "column": 96
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 30177,
                                                "end": 30185,
                                                "loc": {
                                                  "start": {
                                                    "line": 720,
                                                    "column": 97
                                                  },
                                                  "end": {
                                                    "line": 720,
                                                    "column": 105
                                                  }
                                                },
                                                "value": "center",
                                                "rawValue": "center",
                                                "raw": "'center'"
                                              }
                                            ]
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                ]
                              }
                            },
                            "alternate": null
                          },
                          {
                            "type": "IfStatement",
                            "start": 30203,
                            "end": 30309,
                            "loc": {
                              "start": {
                                "line": 721,
                                "column": 12
                              },
                              "end": {
                                "line": 722,
                                "column": 74
                              }
                            },
                            "test": {
                              "type": "CallExpression",
                              "start": 30207,
                              "end": 30233,
                              "loc": {
                                "start": {
                                  "line": 721,
                                  "column": 16
                                },
                                "end": {
                                  "line": 721,
                                  "column": 42
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 30207,
                                "end": 30220,
                                "loc": {
                                  "start": {
                                    "line": 721,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 721,
                                    "column": 29
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 30207,
                                  "end": 30216,
                                  "loc": {
                                    "start": {
                                      "line": 721,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 721,
                                      "column": 25
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 30207,
                                    "end": 30213,
                                    "loc": {
                                      "start": {
                                        "line": 721,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 721,
                                        "column": 22
                                      }
                                    },
                                    "name": "states"
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 30214,
                                    "end": 30215,
                                    "loc": {
                                      "start": {
                                        "line": 721,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 721,
                                        "column": 24
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 30217,
                                  "end": 30220,
                                  "loc": {
                                    "start": {
                                      "line": 721,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 721,
                                      "column": 29
                                    }
                                  },
                                  "name": "has"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 30221,
                                  "end": 30232,
                                  "loc": {
                                    "start": {
                                      "line": 721,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 721,
                                      "column": 41
                                    }
                                  },
                                  "value": "clockwise",
                                  "rawValue": "clockwise",
                                  "raw": "'clockwise'"
                                }
                              ]
                            },
                            "consequent": {
                              "type": "ExpressionStatement",
                              "start": 30251,
                              "end": 30309,
                              "loc": {
                                "start": {
                                  "line": 722,
                                  "column": 16
                                },
                                "end": {
                                  "line": 722,
                                  "column": 74
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 30251,
                                "end": 30308,
                                "loc": {
                                  "start": {
                                    "line": 722,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 722,
                                    "column": 73
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 30251,
                                  "end": 30267,
                                  "loc": {
                                    "start": {
                                      "line": 722,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 722,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 30251,
                                    "end": 30263,
                                    "loc": {
                                      "start": {
                                        "line": 722,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 722,
                                        "column": 28
                                      }
                                    },
                                    "name": "subStateDiff"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 30264,
                                    "end": 30267,
                                    "loc": {
                                      "start": {
                                        "line": 722,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 722,
                                        "column": 32
                                      }
                                    },
                                    "name": "set"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Literal",
                                    "start": 30268,
                                    "end": 30279,
                                    "loc": {
                                      "start": {
                                        "line": 722,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 722,
                                        "column": 44
                                      }
                                    },
                                    "value": "clockwise",
                                    "rawValue": "clockwise",
                                    "raw": "'clockwise'"
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 30281,
                                    "end": 30307,
                                    "loc": {
                                      "start": {
                                        "line": 722,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 722,
                                        "column": 72
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 30281,
                                      "end": 30294,
                                      "loc": {
                                        "start": {
                                          "line": 722,
                                          "column": 46
                                        },
                                        "end": {
                                          "line": 722,
                                          "column": 59
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 30281,
                                        "end": 30290,
                                        "loc": {
                                          "start": {
                                            "line": 722,
                                            "column": 46
                                          },
                                          "end": {
                                            "line": 722,
                                            "column": 55
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 30281,
                                          "end": 30287,
                                          "loc": {
                                            "start": {
                                              "line": 722,
                                              "column": 46
                                            },
                                            "end": {
                                              "line": 722,
                                              "column": 52
                                            }
                                          },
                                          "name": "states"
                                        },
                                        "property": {
                                          "type": "Literal",
                                          "start": 30288,
                                          "end": 30289,
                                          "loc": {
                                            "start": {
                                              "line": 722,
                                              "column": 53
                                            },
                                            "end": {
                                              "line": 722,
                                              "column": 54
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        "computed": true
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 30291,
                                        "end": 30294,
                                        "loc": {
                                          "start": {
                                            "line": 722,
                                            "column": 56
                                          },
                                          "end": {
                                            "line": 722,
                                            "column": 59
                                          }
                                        },
                                        "name": "get"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Literal",
                                        "start": 30295,
                                        "end": 30306,
                                        "loc": {
                                          "start": {
                                            "line": 722,
                                            "column": 60
                                          },
                                          "end": {
                                            "line": 722,
                                            "column": 71
                                          }
                                        },
                                        "value": "clockwise",
                                        "rawValue": "clockwise",
                                        "raw": "'clockwise'"
                                      }
                                    ]
                                  }
                                ]
                              }
                            },
                            "alternate": null
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 30322,
                            "end": 30358,
                            "loc": {
                              "start": {
                                "line": 723,
                                "column": 12
                              },
                              "end": {
                                "line": 723,
                                "column": 48
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 30322,
                              "end": 30357,
                              "loc": {
                                "start": {
                                  "line": 723,
                                  "column": 12
                                },
                                "end": {
                                  "line": 723,
                                  "column": 47
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 30322,
                                "end": 30335,
                                "loc": {
                                  "start": {
                                    "line": 723,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 723,
                                    "column": 25
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 30322,
                                  "end": 30331,
                                  "loc": {
                                    "start": {
                                      "line": 723,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 723,
                                      "column": 21
                                    }
                                  },
                                  "name": "stateDiff"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 30332,
                                  "end": 30335,
                                  "loc": {
                                    "start": {
                                      "line": 723,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 723,
                                      "column": 25
                                    }
                                  },
                                  "name": "set"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 30336,
                                  "end": 30342,
                                  "loc": {
                                    "start": {
                                      "line": 723,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 723,
                                      "column": 32
                                    }
                                  },
                                  "name": "object"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 30344,
                                  "end": 30356,
                                  "loc": {
                                    "start": {
                                      "line": 723,
                                      "column": 34
                                    },
                                    "end": {
                                      "line": 723,
                                      "column": 46
                                    }
                                  },
                                  "name": "subStateDiff"
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 30378,
                      "end": 30907,
                      "loc": {
                        "start": {
                          "line": 726,
                          "column": 8
                        },
                        "end": {
                          "line": 737,
                          "column": 17
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 30378,
                        "end": 30906,
                        "loc": {
                          "start": {
                            "line": 726,
                            "column": 8
                          },
                          "end": {
                            "line": 737,
                            "column": 16
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 30378,
                          "end": 30395,
                          "loc": {
                            "start": {
                              "line": 726,
                              "column": 8
                            },
                            "end": {
                              "line": 726,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 30378,
                            "end": 30387,
                            "loc": {
                              "start": {
                                "line": 726,
                                "column": 8
                              },
                              "end": {
                                "line": 726,
                                "column": 17
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 30378,
                              "end": 30384,
                              "loc": {
                                "start": {
                                  "line": 726,
                                  "column": 8
                                },
                                "end": {
                                  "line": 726,
                                  "column": 14
                                }
                              },
                              "name": "states"
                            },
                            "property": {
                              "type": "Literal",
                              "start": 30385,
                              "end": 30386,
                              "loc": {
                                "start": {
                                  "line": 726,
                                  "column": 15
                                },
                                "end": {
                                  "line": 726,
                                  "column": 16
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            },
                            "computed": true
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 30388,
                            "end": 30395,
                            "loc": {
                              "start": {
                                "line": 726,
                                "column": 18
                              },
                              "end": {
                                "line": 726,
                                "column": 25
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "FunctionExpression",
                            "start": 30396,
                            "end": 30899,
                            "loc": {
                              "start": {
                                "line": 726,
                                "column": 26
                              },
                              "end": {
                                "line": 737,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 30405,
                                "end": 30413,
                                "loc": {
                                  "start": {
                                    "line": 726,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 726,
                                    "column": 43
                                  }
                                },
                                "name": "subState"
                              },
                              {
                                "type": "Identifier",
                                "start": 30415,
                                "end": 30421,
                                "loc": {
                                  "start": {
                                    "line": 726,
                                    "column": 45
                                  },
                                  "end": {
                                    "line": 726,
                                    "column": 51
                                  }
                                },
                                "name": "object"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 30423,
                              "end": 30899,
                              "loc": {
                                "start": {
                                  "line": 726,
                                  "column": 53
                                },
                                "end": {
                                  "line": 737,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "IfStatement",
                                  "start": 30437,
                                  "end": 30469,
                                  "loc": {
                                    "start": {
                                      "line": 727,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 727,
                                      "column": 44
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 30441,
                                    "end": 30460,
                                    "loc": {
                                      "start": {
                                        "line": 727,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 727,
                                        "column": 35
                                      }
                                    },
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 30441,
                                      "end": 30454,
                                      "loc": {
                                        "start": {
                                          "line": 727,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 727,
                                          "column": 29
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 30441,
                                        "end": 30449,
                                        "loc": {
                                          "start": {
                                            "line": 727,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 727,
                                            "column": 24
                                          }
                                        },
                                        "name": "subState"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 30450,
                                        "end": 30454,
                                        "loc": {
                                          "start": {
                                            "line": 727,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 727,
                                            "column": 29
                                          }
                                        },
                                        "name": "size"
                                      },
                                      "computed": false
                                    },
                                    "operator": "===",
                                    "right": {
                                      "type": "Literal",
                                      "start": 30459,
                                      "end": 30460,
                                      "loc": {
                                        "start": {
                                          "line": 727,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 727,
                                          "column": 35
                                        }
                                      },
                                      "value": 0,
                                      "rawValue": 0,
                                      "raw": "0"
                                    }
                                  },
                                  "consequent": {
                                    "type": "ReturnStatement",
                                    "start": 30462,
                                    "end": 30469,
                                    "loc": {
                                      "start": {
                                        "line": 727,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 727,
                                        "column": 44
                                      }
                                    },
                                    "argument": null
                                  },
                                  "alternate": null
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 30482,
                                  "end": 30523,
                                  "loc": {
                                    "start": {
                                      "line": 728,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 728,
                                      "column": 53
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 30486,
                                      "end": 30522,
                                      "loc": {
                                        "start": {
                                          "line": 728,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 728,
                                          "column": 52
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 30486,
                                        "end": 30498,
                                        "loc": {
                                          "start": {
                                            "line": 728,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 728,
                                            "column": 28
                                          }
                                        },
                                        "name": "nextSubState"
                                      },
                                      "init": {
                                        "type": "CallExpression",
                                        "start": 30501,
                                        "end": 30522,
                                        "loc": {
                                          "start": {
                                            "line": 728,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 728,
                                            "column": 52
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 30501,
                                          "end": 30514,
                                          "loc": {
                                            "start": {
                                              "line": 728,
                                              "column": 31
                                            },
                                            "end": {
                                              "line": 728,
                                              "column": 44
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 30501,
                                            "end": 30510,
                                            "loc": {
                                              "start": {
                                                "line": 728,
                                                "column": 31
                                              },
                                              "end": {
                                                "line": 728,
                                                "column": 40
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 30501,
                                              "end": 30507,
                                              "loc": {
                                                "start": {
                                                  "line": 728,
                                                  "column": 31
                                                },
                                                "end": {
                                                  "line": 728,
                                                  "column": 37
                                                }
                                              },
                                              "name": "states"
                                            },
                                            "property": {
                                              "type": "Literal",
                                              "start": 30508,
                                              "end": 30509,
                                              "loc": {
                                                "start": {
                                                  "line": 728,
                                                  "column": 38
                                                },
                                                "end": {
                                                  "line": 728,
                                                  "column": 39
                                                }
                                              },
                                              "value": 1,
                                              "rawValue": 1,
                                              "raw": "1"
                                            },
                                            "computed": true
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 30511,
                                            "end": 30514,
                                            "loc": {
                                              "start": {
                                                "line": 728,
                                                "column": 41
                                              },
                                              "end": {
                                                "line": 728,
                                                "column": 44
                                              }
                                            },
                                            "name": "get"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 30515,
                                            "end": 30521,
                                            "loc": {
                                              "start": {
                                                "line": 728,
                                                "column": 45
                                              },
                                              "end": {
                                                "line": 728,
                                                "column": 51
                                              }
                                            },
                                            "name": "object"
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 30537,
                                  "end": 30889,
                                  "loc": {
                                    "start": {
                                      "line": 730,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 736,
                                      "column": 13
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 30541,
                                    "end": 30564,
                                    "loc": {
                                      "start": {
                                        "line": 730,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 730,
                                        "column": 39
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 30541,
                                      "end": 30547,
                                      "loc": {
                                        "start": {
                                          "line": 730,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 730,
                                          "column": 22
                                        }
                                      },
                                      "name": "object"
                                    },
                                    "operator": "instanceof",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 30559,
                                      "end": 30564,
                                      "loc": {
                                        "start": {
                                          "line": 730,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 730,
                                          "column": 39
                                        }
                                      },
                                      "name": "Point"
                                    }
                                  },
                                  "consequent": {
                                    "type": "BlockStatement",
                                    "start": 30566,
                                    "end": 30667,
                                    "loc": {
                                      "start": {
                                        "line": 730,
                                        "column": 41
                                      },
                                      "end": {
                                        "line": 732,
                                        "column": 13
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 30584,
                                        "end": 30653,
                                        "loc": {
                                          "start": {
                                            "line": 731,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 731,
                                            "column": 85
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 30584,
                                          "end": 30652,
                                          "loc": {
                                            "start": {
                                              "line": 731,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 731,
                                              "column": 84
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 30584,
                                            "end": 30596,
                                            "loc": {
                                              "start": {
                                                "line": 731,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 731,
                                                "column": 28
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 30584,
                                              "end": 30592,
                                              "loc": {
                                                "start": {
                                                  "line": 731,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 731,
                                                  "column": 24
                                                }
                                              },
                                              "name": "subState"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 30593,
                                              "end": 30596,
                                              "loc": {
                                                "start": {
                                                  "line": 731,
                                                  "column": 25
                                                },
                                                "end": {
                                                  "line": 731,
                                                  "column": 28
                                                }
                                              },
                                              "name": "set"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "Identifier",
                                              "start": 30597,
                                              "end": 30603,
                                              "loc": {
                                                "start": {
                                                  "line": 731,
                                                  "column": 29
                                                },
                                                "end": {
                                                  "line": 731,
                                                  "column": 35
                                                }
                                              },
                                              "name": "object"
                                            },
                                            {
                                              "type": "CallExpression",
                                              "start": 30605,
                                              "end": 30651,
                                              "loc": {
                                                "start": {
                                                  "line": 731,
                                                  "column": 37
                                                },
                                                "end": {
                                                  "line": 731,
                                                  "column": 83
                                                }
                                              },
                                              "callee": {
                                                "type": "Identifier",
                                                "start": 30605,
                                                "end": 30617,
                                                "loc": {
                                                  "start": {
                                                    "line": 731,
                                                    "column": 37
                                                  },
                                                  "end": {
                                                    "line": 731,
                                                    "column": 49
                                                  }
                                                },
                                                "name": "getPointDiff"
                                              },
                                              "arguments": [
                                                {
                                                  "type": "Identifier",
                                                  "start": 30618,
                                                  "end": 30624,
                                                  "loc": {
                                                    "start": {
                                                      "line": 731,
                                                      "column": 50
                                                    },
                                                    "end": {
                                                      "line": 731,
                                                      "column": 56
                                                    }
                                                  },
                                                  "name": "object"
                                                },
                                                {
                                                  "type": "ArrayExpression",
                                                  "start": 30626,
                                                  "end": 30650,
                                                  "loc": {
                                                    "start": {
                                                      "line": 731,
                                                      "column": 58
                                                    },
                                                    "end": {
                                                      "line": 731,
                                                      "column": 82
                                                    }
                                                  },
                                                  "elements": [
                                                    {
                                                      "type": "Identifier",
                                                      "start": 30627,
                                                      "end": 30635,
                                                      "loc": {
                                                        "start": {
                                                          "line": 731,
                                                          "column": 59
                                                        },
                                                        "end": {
                                                          "line": 731,
                                                          "column": 67
                                                        }
                                                      },
                                                      "name": "subState"
                                                    },
                                                    {
                                                      "type": "Identifier",
                                                      "start": 30637,
                                                      "end": 30649,
                                                      "loc": {
                                                        "start": {
                                                          "line": 731,
                                                          "column": 69
                                                        },
                                                        "end": {
                                                          "line": 731,
                                                          "column": 81
                                                        }
                                                      },
                                                      "name": "nextSubState"
                                                    }
                                                  ]
                                                }
                                              ]
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  },
                                  "alternate": {
                                    "type": "IfStatement",
                                    "start": 30673,
                                    "end": 30889,
                                    "loc": {
                                      "start": {
                                        "line": 732,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 736,
                                        "column": 13
                                      }
                                    },
                                    "test": {
                                      "type": "BinaryExpression",
                                      "start": 30677,
                                      "end": 30699,
                                      "loc": {
                                        "start": {
                                          "line": 732,
                                          "column": 23
                                        },
                                        "end": {
                                          "line": 732,
                                          "column": 45
                                        }
                                      },
                                      "left": {
                                        "type": "Identifier",
                                        "start": 30677,
                                        "end": 30683,
                                        "loc": {
                                          "start": {
                                            "line": 732,
                                            "column": 23
                                          },
                                          "end": {
                                            "line": 732,
                                            "column": 29
                                          }
                                        },
                                        "name": "object"
                                      },
                                      "operator": "instanceof",
                                      "right": {
                                        "type": "Identifier",
                                        "start": 30695,
                                        "end": 30699,
                                        "loc": {
                                          "start": {
                                            "line": 732,
                                            "column": 41
                                          },
                                          "end": {
                                            "line": 732,
                                            "column": 45
                                          }
                                        },
                                        "name": "Line"
                                      }
                                    },
                                    "consequent": {
                                      "type": "BlockStatement",
                                      "start": 30701,
                                      "end": 30779,
                                      "loc": {
                                        "start": {
                                          "line": 732,
                                          "column": 47
                                        },
                                        "end": {
                                          "line": 734,
                                          "column": 13
                                        }
                                      },
                                      "body": [
                                        {
                                          "type": "ExpressionStatement",
                                          "start": 30719,
                                          "end": 30765,
                                          "loc": {
                                            "start": {
                                              "line": 733,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 733,
                                              "column": 62
                                            }
                                          },
                                          "expression": {
                                            "type": "CallExpression",
                                            "start": 30719,
                                            "end": 30764,
                                            "loc": {
                                              "start": {
                                                "line": 733,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 733,
                                                "column": 61
                                              }
                                            },
                                            "callee": {
                                              "type": "Identifier",
                                              "start": 30719,
                                              "end": 30730,
                                              "loc": {
                                                "start": {
                                                  "line": 733,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 733,
                                                  "column": 27
                                                }
                                              },
                                              "name": "getLineDiff"
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 30731,
                                                "end": 30737,
                                                "loc": {
                                                  "start": {
                                                    "line": 733,
                                                    "column": 28
                                                  },
                                                  "end": {
                                                    "line": 733,
                                                    "column": 34
                                                  }
                                                },
                                                "name": "object"
                                              },
                                              {
                                                "type": "ArrayExpression",
                                                "start": 30739,
                                                "end": 30763,
                                                "loc": {
                                                  "start": {
                                                    "line": 733,
                                                    "column": 36
                                                  },
                                                  "end": {
                                                    "line": 733,
                                                    "column": 60
                                                  }
                                                },
                                                "elements": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 30740,
                                                    "end": 30748,
                                                    "loc": {
                                                      "start": {
                                                        "line": 733,
                                                        "column": 37
                                                      },
                                                      "end": {
                                                        "line": 733,
                                                        "column": 45
                                                      }
                                                    },
                                                    "name": "subState"
                                                  },
                                                  {
                                                    "type": "Identifier",
                                                    "start": 30750,
                                                    "end": 30762,
                                                    "loc": {
                                                      "start": {
                                                        "line": 733,
                                                        "column": 47
                                                      },
                                                      "end": {
                                                        "line": 733,
                                                        "column": 59
                                                      }
                                                    },
                                                    "name": "nextSubState"
                                                  }
                                                ]
                                              }
                                            ]
                                          }
                                        }
                                      ]
                                    },
                                    "alternate": {
                                      "type": "IfStatement",
                                      "start": 30785,
                                      "end": 30889,
                                      "loc": {
                                        "start": {
                                          "line": 734,
                                          "column": 19
                                        },
                                        "end": {
                                          "line": 736,
                                          "column": 13
                                        }
                                      },
                                      "test": {
                                        "type": "BinaryExpression",
                                        "start": 30789,
                                        "end": 30810,
                                        "loc": {
                                          "start": {
                                            "line": 734,
                                            "column": 23
                                          },
                                          "end": {
                                            "line": 734,
                                            "column": 44
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 30789,
                                          "end": 30795,
                                          "loc": {
                                            "start": {
                                              "line": 734,
                                              "column": 23
                                            },
                                            "end": {
                                              "line": 734,
                                              "column": 29
                                            }
                                          },
                                          "name": "object"
                                        },
                                        "operator": "instanceof",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 30807,
                                          "end": 30810,
                                          "loc": {
                                            "start": {
                                              "line": 734,
                                              "column": 41
                                            },
                                            "end": {
                                              "line": 734,
                                              "column": 44
                                            }
                                          },
                                          "name": "Arc"
                                        }
                                      },
                                      "consequent": {
                                        "type": "BlockStatement",
                                        "start": 30812,
                                        "end": 30889,
                                        "loc": {
                                          "start": {
                                            "line": 734,
                                            "column": 46
                                          },
                                          "end": {
                                            "line": 736,
                                            "column": 13
                                          }
                                        },
                                        "body": [
                                          {
                                            "type": "ExpressionStatement",
                                            "start": 30830,
                                            "end": 30875,
                                            "loc": {
                                              "start": {
                                                "line": 735,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 735,
                                                "column": 61
                                              }
                                            },
                                            "expression": {
                                              "type": "CallExpression",
                                              "start": 30830,
                                              "end": 30874,
                                              "loc": {
                                                "start": {
                                                  "line": 735,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 735,
                                                  "column": 60
                                                }
                                              },
                                              "callee": {
                                                "type": "Identifier",
                                                "start": 30830,
                                                "end": 30840,
                                                "loc": {
                                                  "start": {
                                                    "line": 735,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 735,
                                                    "column": 26
                                                  }
                                                },
                                                "name": "getArcDiff"
                                              },
                                              "arguments": [
                                                {
                                                  "type": "Identifier",
                                                  "start": 30841,
                                                  "end": 30847,
                                                  "loc": {
                                                    "start": {
                                                      "line": 735,
                                                      "column": 27
                                                    },
                                                    "end": {
                                                      "line": 735,
                                                      "column": 33
                                                    }
                                                  },
                                                  "name": "object"
                                                },
                                                {
                                                  "type": "ArrayExpression",
                                                  "start": 30849,
                                                  "end": 30873,
                                                  "loc": {
                                                    "start": {
                                                      "line": 735,
                                                      "column": 35
                                                    },
                                                    "end": {
                                                      "line": 735,
                                                      "column": 59
                                                    }
                                                  },
                                                  "elements": [
                                                    {
                                                      "type": "Identifier",
                                                      "start": 30850,
                                                      "end": 30858,
                                                      "loc": {
                                                        "start": {
                                                          "line": 735,
                                                          "column": 36
                                                        },
                                                        "end": {
                                                          "line": 735,
                                                          "column": 44
                                                        }
                                                      },
                                                      "name": "subState"
                                                    },
                                                    {
                                                      "type": "Identifier",
                                                      "start": 30860,
                                                      "end": 30872,
                                                      "loc": {
                                                        "start": {
                                                          "line": 735,
                                                          "column": 46
                                                        },
                                                        "end": {
                                                          "line": 735,
                                                          "column": 58
                                                        }
                                                      },
                                                      "name": "nextSubState"
                                                    }
                                                  ]
                                                }
                                              ]
                                            }
                                          }
                                        ]
                                      },
                                      "alternate": null
                                    }
                                  }
                                }
                              ]
                            }
                          },
                          {
                            "type": "ThisExpression",
                            "start": 30901,
                            "end": 30905,
                            "loc": {
                              "start": {
                                "line": 737,
                                "column": 11
                              },
                              "end": {
                                "line": 737,
                                "column": 15
                              }
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 30917,
                      "end": 30934,
                      "loc": {
                        "start": {
                          "line": 739,
                          "column": 8
                        },
                        "end": {
                          "line": 739,
                          "column": 25
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 30924,
                        "end": 30933,
                        "loc": {
                          "start": {
                            "line": 739,
                            "column": 15
                          },
                          "end": {
                            "line": 739,
                            "column": 24
                          }
                        },
                        "name": "stateDiff"
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 30946,
              "end": 31591,
              "loc": {
                "start": {
                  "line": 742,
                  "column": 4
                },
                "end": {
                  "line": 756,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 30946,
                "end": 30960,
                "loc": {
                  "start": {
                    "line": 742,
                    "column": 4
                  },
                  "end": {
                    "line": 742,
                    "column": 18
                  }
                },
                "name": "applyStateDiff"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 30960,
                "end": 31591,
                "loc": {
                  "start": {
                    "line": 742,
                    "column": 18
                  },
                  "end": {
                    "line": 756,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 30961,
                    "end": 30970,
                    "loc": {
                      "start": {
                        "line": 742,
                        "column": 19
                      },
                      "end": {
                        "line": 742,
                        "column": 28
                      }
                    },
                    "name": "stateDiff"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 30972,
                  "end": 31591,
                  "loc": {
                    "start": {
                      "line": 742,
                      "column": 30
                    },
                    "end": {
                      "line": 756,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 30982,
                      "end": 31408,
                      "loc": {
                        "start": {
                          "line": 743,
                          "column": 8
                        },
                        "end": {
                          "line": 752,
                          "column": 17
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 30982,
                        "end": 31407,
                        "loc": {
                          "start": {
                            "line": 743,
                            "column": 8
                          },
                          "end": {
                            "line": 752,
                            "column": 16
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 30982,
                          "end": 30999,
                          "loc": {
                            "start": {
                              "line": 743,
                              "column": 8
                            },
                            "end": {
                              "line": 743,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 30982,
                            "end": 30991,
                            "loc": {
                              "start": {
                                "line": 743,
                                "column": 8
                              },
                              "end": {
                                "line": 743,
                                "column": 17
                              }
                            },
                            "name": "stateDiff"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 30992,
                            "end": 30999,
                            "loc": {
                              "start": {
                                "line": 743,
                                "column": 18
                              },
                              "end": {
                                "line": 743,
                                "column": 25
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "FunctionExpression",
                            "start": 31000,
                            "end": 31400,
                            "loc": {
                              "start": {
                                "line": 743,
                                "column": 26
                              },
                              "end": {
                                "line": 752,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 31009,
                                "end": 31016,
                                "loc": {
                                  "start": {
                                    "line": 743,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 743,
                                    "column": 42
                                  }
                                },
                                "name": "subDiff"
                              },
                              {
                                "type": "Identifier",
                                "start": 31018,
                                "end": 31024,
                                "loc": {
                                  "start": {
                                    "line": 743,
                                    "column": 44
                                  },
                                  "end": {
                                    "line": 743,
                                    "column": 50
                                  }
                                },
                                "name": "object"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 31026,
                              "end": 31400,
                              "loc": {
                                "start": {
                                  "line": 743,
                                  "column": 52
                                },
                                "end": {
                                  "line": 752,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "IfStatement",
                                  "start": 31040,
                                  "end": 31262,
                                  "loc": {
                                    "start": {
                                      "line": 744,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 748,
                                      "column": 13
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 31044,
                                    "end": 31065,
                                    "loc": {
                                      "start": {
                                        "line": 744,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 744,
                                        "column": 37
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 31044,
                                      "end": 31051,
                                      "loc": {
                                        "start": {
                                          "line": 744,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 744,
                                          "column": 23
                                        }
                                      },
                                      "name": "subDiff"
                                    },
                                    "operator": "===",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 31056,
                                      "end": 31065,
                                      "loc": {
                                        "start": {
                                          "line": 744,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 744,
                                          "column": 37
                                        }
                                      },
                                      "name": "undefined"
                                    }
                                  },
                                  "consequent": {
                                    "type": "BlockStatement",
                                    "start": 31067,
                                    "end": 31262,
                                    "loc": {
                                      "start": {
                                        "line": 744,
                                        "column": 39
                                      },
                                      "end": {
                                        "line": 748,
                                        "column": 13
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "IfStatement",
                                        "start": 31085,
                                        "end": 31177,
                                        "loc": {
                                          "start": {
                                            "line": 745,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 745,
                                            "column": 108
                                          }
                                        },
                                        "test": {
                                          "type": "UnaryExpression",
                                          "start": 31089,
                                          "end": 31113,
                                          "loc": {
                                            "start": {
                                              "line": 745,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 745,
                                              "column": 44
                                            }
                                          },
                                          "operator": "!",
                                          "prefix": true,
                                          "argument": {
                                            "type": "CallExpression",
                                            "start": 31090,
                                            "end": 31113,
                                            "loc": {
                                              "start": {
                                                "line": 745,
                                                "column": 21
                                              },
                                              "end": {
                                                "line": 745,
                                                "column": 44
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 31090,
                                              "end": 31105,
                                              "loc": {
                                                "start": {
                                                  "line": 745,
                                                  "column": 21
                                                },
                                                "end": {
                                                  "line": 745,
                                                  "column": 36
                                                }
                                              },
                                              "object": {
                                                "type": "ThisExpression",
                                                "start": 31090,
                                                "end": 31094,
                                                "loc": {
                                                  "start": {
                                                    "line": 745,
                                                    "column": 21
                                                  },
                                                  "end": {
                                                    "line": 745,
                                                    "column": 25
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 31095,
                                                "end": 31105,
                                                "loc": {
                                                  "start": {
                                                    "line": 745,
                                                    "column": 26
                                                  },
                                                  "end": {
                                                    "line": 745,
                                                    "column": 36
                                                  }
                                                },
                                                "name": "isOnSketch"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 31106,
                                                "end": 31112,
                                                "loc": {
                                                  "start": {
                                                    "line": 745,
                                                    "column": 37
                                                  },
                                                  "end": {
                                                    "line": 745,
                                                    "column": 43
                                                  }
                                                },
                                                "name": "object"
                                              }
                                            ]
                                          }
                                        },
                                        "consequent": {
                                          "type": "ExpressionStatement",
                                          "start": 31115,
                                          "end": 31177,
                                          "loc": {
                                            "start": {
                                              "line": 745,
                                              "column": 46
                                            },
                                            "end": {
                                              "line": 745,
                                              "column": 108
                                            }
                                          },
                                          "expression": {
                                            "type": "CallExpression",
                                            "start": 31115,
                                            "end": 31176,
                                            "loc": {
                                              "start": {
                                                "line": 745,
                                                "column": 46
                                              },
                                              "end": {
                                                "line": 745,
                                                "column": 107
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 31115,
                                              "end": 31128,
                                              "loc": {
                                                "start": {
                                                  "line": 745,
                                                  "column": 46
                                                },
                                                "end": {
                                                  "line": 745,
                                                  "column": 59
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 31115,
                                                "end": 31122,
                                                "loc": {
                                                  "start": {
                                                    "line": 745,
                                                    "column": 46
                                                  },
                                                  "end": {
                                                    "line": 745,
                                                    "column": 53
                                                  }
                                                },
                                                "name": "console"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 31123,
                                                "end": 31128,
                                                "loc": {
                                                  "start": {
                                                    "line": 745,
                                                    "column": 54
                                                  },
                                                  "end": {
                                                    "line": 745,
                                                    "column": 59
                                                  }
                                                },
                                                "name": "error"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 31129,
                                                "end": 31164,
                                                "loc": {
                                                  "start": {
                                                    "line": 745,
                                                    "column": 60
                                                  },
                                                  "end": {
                                                    "line": 745,
                                                    "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": 31166,
                                                "end": 31175,
                                                "loc": {
                                                  "start": {
                                                    "line": 745,
                                                    "column": 97
                                                  },
                                                  "end": {
                                                    "line": 745,
                                                    "column": 106
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 31166,
                                                  "end": 31172,
                                                  "loc": {
                                                    "start": {
                                                      "line": 745,
                                                      "column": 97
                                                    },
                                                    "end": {
                                                      "line": 745,
                                                      "column": 103
                                                    }
                                                  },
                                                  "name": "object"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 31173,
                                                  "end": 31175,
                                                  "loc": {
                                                    "start": {
                                                      "line": 745,
                                                      "column": 104
                                                    },
                                                    "end": {
                                                      "line": 745,
                                                      "column": 106
                                                    }
                                                  },
                                                  "name": "id"
                                                },
                                                "computed": false
                                              }
                                            ]
                                          }
                                        },
                                        "alternate": null
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 31194,
                                        "end": 31224,
                                        "loc": {
                                          "start": {
                                            "line": 746,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 746,
                                            "column": 46
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 31194,
                                          "end": 31223,
                                          "loc": {
                                            "start": {
                                              "line": 746,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 746,
                                              "column": 45
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 31194,
                                            "end": 31215,
                                            "loc": {
                                              "start": {
                                                "line": 746,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 746,
                                                "column": 37
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 31194,
                                              "end": 31198,
                                              "loc": {
                                                "start": {
                                                  "line": 746,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 746,
                                                  "column": 20
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 31199,
                                              "end": 31215,
                                              "loc": {
                                                "start": {
                                                  "line": 746,
                                                  "column": 21
                                                },
                                                "end": {
                                                  "line": 746,
                                                  "column": 37
                                                }
                                              },
                                              "name": "removeFromSketch"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "Identifier",
                                              "start": 31216,
                                              "end": 31222,
                                              "loc": {
                                                "start": {
                                                  "line": 746,
                                                  "column": 38
                                                },
                                                "end": {
                                                  "line": 746,
                                                  "column": 44
                                                }
                                              },
                                              "name": "object"
                                            }
                                          ]
                                        }
                                      },
                                      {
                                        "type": "ReturnStatement",
                                        "start": 31241,
                                        "end": 31248,
                                        "loc": {
                                          "start": {
                                            "line": 747,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 747,
                                            "column": 23
                                          }
                                        },
                                        "argument": null
                                      }
                                    ]
                                  },
                                  "alternate": null
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 31275,
                                  "end": 31346,
                                  "loc": {
                                    "start": {
                                      "line": 749,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 750,
                                      "column": 41
                                    }
                                  },
                                  "test": {
                                    "type": "UnaryExpression",
                                    "start": 31279,
                                    "end": 31303,
                                    "loc": {
                                      "start": {
                                        "line": 749,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 749,
                                        "column": 40
                                      }
                                    },
                                    "operator": "!",
                                    "prefix": true,
                                    "argument": {
                                      "type": "CallExpression",
                                      "start": 31280,
                                      "end": 31303,
                                      "loc": {
                                        "start": {
                                          "line": 749,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 749,
                                          "column": 40
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 31280,
                                        "end": 31295,
                                        "loc": {
                                          "start": {
                                            "line": 749,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 749,
                                            "column": 32
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 31280,
                                          "end": 31284,
                                          "loc": {
                                            "start": {
                                              "line": 749,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 749,
                                              "column": 21
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 31285,
                                          "end": 31295,
                                          "loc": {
                                            "start": {
                                              "line": 749,
                                              "column": 22
                                            },
                                            "end": {
                                              "line": 749,
                                              "column": 32
                                            }
                                          },
                                          "name": "isOnSketch"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 31296,
                                          "end": 31302,
                                          "loc": {
                                            "start": {
                                              "line": 749,
                                              "column": 33
                                            },
                                            "end": {
                                              "line": 749,
                                              "column": 39
                                            }
                                          },
                                          "name": "object"
                                        }
                                      ]
                                    }
                                  },
                                  "consequent": {
                                    "type": "ExpressionStatement",
                                    "start": 31321,
                                    "end": 31346,
                                    "loc": {
                                      "start": {
                                        "line": 750,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 750,
                                        "column": 41
                                      }
                                    },
                                    "expression": {
                                      "type": "CallExpression",
                                      "start": 31321,
                                      "end": 31345,
                                      "loc": {
                                        "start": {
                                          "line": 750,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 750,
                                          "column": 40
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 31321,
                                        "end": 31337,
                                        "loc": {
                                          "start": {
                                            "line": 750,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 750,
                                            "column": 32
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 31321,
                                          "end": 31325,
                                          "loc": {
                                            "start": {
                                              "line": 750,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 750,
                                              "column": 20
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 31326,
                                          "end": 31337,
                                          "loc": {
                                            "start": {
                                              "line": 750,
                                              "column": 21
                                            },
                                            "end": {
                                              "line": 750,
                                              "column": 32
                                            }
                                          },
                                          "name": "addToSketch"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 31338,
                                          "end": 31344,
                                          "loc": {
                                            "start": {
                                              "line": 750,
                                              "column": 33
                                            },
                                            "end": {
                                              "line": 750,
                                              "column": 39
                                            }
                                          },
                                          "name": "object"
                                        }
                                      ]
                                    }
                                  },
                                  "alternate": null
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 31359,
                                  "end": 31390,
                                  "loc": {
                                    "start": {
                                      "line": 751,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 751,
                                      "column": 43
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 31359,
                                    "end": 31389,
                                    "loc": {
                                      "start": {
                                        "line": 751,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 751,
                                        "column": 42
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 31359,
                                      "end": 31380,
                                      "loc": {
                                        "start": {
                                          "line": 751,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 751,
                                          "column": 33
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 31359,
                                        "end": 31365,
                                        "loc": {
                                          "start": {
                                            "line": 751,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 751,
                                            "column": 18
                                          }
                                        },
                                        "name": "object"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 31366,
                                        "end": 31380,
                                        "loc": {
                                          "start": {
                                            "line": 751,
                                            "column": 19
                                          },
                                          "end": {
                                            "line": 751,
                                            "column": 33
                                          }
                                        },
                                        "name": "applyStateDiff"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 31381,
                                        "end": 31388,
                                        "loc": {
                                          "start": {
                                            "line": 751,
                                            "column": 34
                                          },
                                          "end": {
                                            "line": 751,
                                            "column": 41
                                          }
                                        },
                                        "name": "subDiff"
                                      }
                                    ]
                                  }
                                }
                              ]
                            }
                          },
                          {
                            "type": "ThisExpression",
                            "start": 31402,
                            "end": 31406,
                            "loc": {
                              "start": {
                                "line": 752,
                                "column": 11
                              },
                              "end": {
                                "line": 752,
                                "column": 15
                              }
                            }
                          }
                        ]
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " geometry of any object (even not in stateDiff) could have been invalidated",
                          "start": 31417,
                          "end": 31494,
                          "loc": {
                            "start": {
                              "line": 753,
                              "column": 8
                            },
                            "end": {
                              "line": 753,
                              "column": 85
                            }
                          },
                          "range": [
                            31417,
                            31494
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ForOfStatement",
                      "start": 31503,
                      "end": 31585,
                      "loc": {
                        "start": {
                          "line": 754,
                          "column": 8
                        },
                        "end": {
                          "line": 755,
                          "column": 36
                        }
                      },
                      "left": {
                        "type": "VariableDeclaration",
                        "start": 31508,
                        "end": 31518,
                        "loc": {
                          "start": {
                            "line": 754,
                            "column": 13
                          },
                          "end": {
                            "line": 754,
                            "column": 23
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 31512,
                            "end": 31518,
                            "loc": {
                              "start": {
                                "line": 754,
                                "column": 17
                              },
                              "end": {
                                "line": 754,
                                "column": 23
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 31512,
                              "end": 31518,
                              "loc": {
                                "start": {
                                  "line": 754,
                                  "column": 17
                                },
                                "end": {
                                  "line": 754,
                                  "column": 23
                                }
                              },
                              "name": "object",
                              "leadingComments": null
                            },
                            "init": null,
                            "leadingComments": null
                          }
                        ],
                        "kind": "var",
                        "leadingComments": null
                      },
                      "right": {
                        "type": "CallExpression",
                        "start": 31522,
                        "end": 31547,
                        "loc": {
                          "start": {
                            "line": 754,
                            "column": 27
                          },
                          "end": {
                            "line": 754,
                            "column": 52
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 31522,
                          "end": 31545,
                          "loc": {
                            "start": {
                              "line": 754,
                              "column": 27
                            },
                            "end": {
                              "line": 754,
                              "column": 50
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 31522,
                            "end": 31526,
                            "loc": {
                              "start": {
                                "line": 754,
                                "column": 27
                              },
                              "end": {
                                "line": 754,
                                "column": 31
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 31527,
                            "end": 31545,
                            "loc": {
                              "start": {
                                "line": 754,
                                "column": 32
                              },
                              "end": {
                                "line": 754,
                                "column": 50
                              }
                            },
                            "name": "getObjectsOnSketch"
                          },
                          "computed": false
                        },
                        "arguments": []
                      },
                      "body": {
                        "type": "ExpressionStatement",
                        "start": 31561,
                        "end": 31585,
                        "loc": {
                          "start": {
                            "line": 755,
                            "column": 12
                          },
                          "end": {
                            "line": 755,
                            "column": 36
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 31561,
                          "end": 31584,
                          "loc": {
                            "start": {
                              "line": 755,
                              "column": 12
                            },
                            "end": {
                              "line": 755,
                              "column": 35
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 31561,
                            "end": 31582,
                            "loc": {
                              "start": {
                                "line": 755,
                                "column": 12
                              },
                              "end": {
                                "line": 755,
                                "column": 33
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 31561,
                              "end": 31567,
                              "loc": {
                                "start": {
                                  "line": 755,
                                  "column": 12
                                },
                                "end": {
                                  "line": 755,
                                  "column": 18
                                }
                              },
                              "name": "object"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 31568,
                              "end": 31582,
                              "loc": {
                                "start": {
                                  "line": 755,
                                  "column": 19
                                },
                                "end": {
                                  "line": 755,
                                  "column": 33
                                }
                              },
                              "name": "updateGeometry"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " geometry of any object (even not in stateDiff) could have been invalidated",
                          "start": 31417,
                          "end": 31494,
                          "loc": {
                            "start": {
                              "line": 753,
                              "column": 8
                            },
                            "end": {
                              "line": 753,
                              "column": 85
                            }
                          },
                          "range": [
                            31417,
                            31494
                          ]
                        }
                      ]
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 31597,
              "end": 32035,
              "loc": {
                "start": {
                  "line": 758,
                  "column": 4
                },
                "end": {
                  "line": 768,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 31597,
                "end": 31609,
                "loc": {
                  "start": {
                    "line": 758,
                    "column": 4
                  },
                  "end": {
                    "line": 758,
                    "column": 16
                  }
                },
                "name": "addStateDiff"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 31609,
                "end": 32035,
                "loc": {
                  "start": {
                    "line": 758,
                    "column": 16
                  },
                  "end": {
                    "line": 768,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 31610,
                    "end": 31619,
                    "loc": {
                      "start": {
                        "line": 758,
                        "column": 17
                      },
                      "end": {
                        "line": 758,
                        "column": 26
                      }
                    },
                    "name": "stateDiff"
                  },
                  {
                    "type": "Identifier",
                    "start": 31621,
                    "end": 31626,
                    "loc": {
                      "start": {
                        "line": 758,
                        "column": 28
                      },
                      "end": {
                        "line": 758,
                        "column": 33
                      }
                    },
                    "name": "alpha"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 31628,
                  "end": 32035,
                  "loc": {
                    "start": {
                      "line": 758,
                      "column": 35
                    },
                    "end": {
                      "line": 768,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 31638,
                      "end": 31852,
                      "loc": {
                        "start": {
                          "line": 759,
                          "column": 8
                        },
                        "end": {
                          "line": 764,
                          "column": 17
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 31638,
                        "end": 31851,
                        "loc": {
                          "start": {
                            "line": 759,
                            "column": 8
                          },
                          "end": {
                            "line": 764,
                            "column": 16
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 31638,
                          "end": 31655,
                          "loc": {
                            "start": {
                              "line": 759,
                              "column": 8
                            },
                            "end": {
                              "line": 759,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 31638,
                            "end": 31647,
                            "loc": {
                              "start": {
                                "line": 759,
                                "column": 8
                              },
                              "end": {
                                "line": 759,
                                "column": 17
                              }
                            },
                            "name": "stateDiff"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 31648,
                            "end": 31655,
                            "loc": {
                              "start": {
                                "line": 759,
                                "column": 18
                              },
                              "end": {
                                "line": 759,
                                "column": 25
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "FunctionExpression",
                            "start": 31656,
                            "end": 31844,
                            "loc": {
                              "start": {
                                "line": 759,
                                "column": 26
                              },
                              "end": {
                                "line": 764,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 31665,
                                "end": 31672,
                                "loc": {
                                  "start": {
                                    "line": 759,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 759,
                                    "column": 42
                                  }
                                },
                                "name": "subDiff"
                              },
                              {
                                "type": "Identifier",
                                "start": 31674,
                                "end": 31680,
                                "loc": {
                                  "start": {
                                    "line": 759,
                                    "column": 44
                                  },
                                  "end": {
                                    "line": 759,
                                    "column": 50
                                  }
                                },
                                "name": "object"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 31682,
                              "end": 31844,
                              "loc": {
                                "start": {
                                  "line": 759,
                                  "column": 52
                                },
                                "end": {
                                  "line": 764,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "IfStatement",
                                  "start": 31696,
                                  "end": 31785,
                                  "loc": {
                                    "start": {
                                      "line": 760,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 762,
                                      "column": 13
                                    }
                                  },
                                  "test": {
                                    "type": "LogicalExpression",
                                    "start": 31700,
                                    "end": 31744,
                                    "loc": {
                                      "start": {
                                        "line": 760,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 760,
                                        "column": 60
                                      }
                                    },
                                    "left": {
                                      "type": "BinaryExpression",
                                      "start": 31700,
                                      "end": 31716,
                                      "loc": {
                                        "start": {
                                          "line": 760,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 760,
                                          "column": 32
                                        }
                                      },
                                      "left": {
                                        "type": "Identifier",
                                        "start": 31700,
                                        "end": 31707,
                                        "loc": {
                                          "start": {
                                            "line": 760,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 760,
                                            "column": 23
                                          }
                                        },
                                        "name": "subDiff"
                                      },
                                      "operator": "===",
                                      "right": {
                                        "type": "Literal",
                                        "start": 31712,
                                        "end": 31716,
                                        "loc": {
                                          "start": {
                                            "line": 760,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 760,
                                            "column": 32
                                          }
                                        },
                                        "value": null,
                                        "rawValue": null,
                                        "raw": "null"
                                      }
                                    },
                                    "operator": "||",
                                    "right": {
                                      "type": "UnaryExpression",
                                      "start": 31720,
                                      "end": 31744,
                                      "loc": {
                                        "start": {
                                          "line": 760,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 760,
                                          "column": 60
                                        }
                                      },
                                      "operator": "!",
                                      "prefix": true,
                                      "argument": {
                                        "type": "CallExpression",
                                        "start": 31721,
                                        "end": 31744,
                                        "loc": {
                                          "start": {
                                            "line": 760,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 760,
                                            "column": 60
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 31721,
                                          "end": 31736,
                                          "loc": {
                                            "start": {
                                              "line": 760,
                                              "column": 37
                                            },
                                            "end": {
                                              "line": 760,
                                              "column": 52
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 31721,
                                            "end": 31725,
                                            "loc": {
                                              "start": {
                                                "line": 760,
                                                "column": 37
                                              },
                                              "end": {
                                                "line": 760,
                                                "column": 41
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 31726,
                                            "end": 31736,
                                            "loc": {
                                              "start": {
                                                "line": 760,
                                                "column": 42
                                              },
                                              "end": {
                                                "line": 760,
                                                "column": 52
                                              }
                                            },
                                            "name": "isOnSketch"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 31737,
                                            "end": 31743,
                                            "loc": {
                                              "start": {
                                                "line": 760,
                                                "column": 53
                                              },
                                              "end": {
                                                "line": 760,
                                                "column": 59
                                              }
                                            },
                                            "name": "object"
                                          }
                                        ]
                                      }
                                    }
                                  },
                                  "consequent": {
                                    "type": "BlockStatement",
                                    "start": 31746,
                                    "end": 31785,
                                    "loc": {
                                      "start": {
                                        "line": 760,
                                        "column": 62
                                      },
                                      "end": {
                                        "line": 762,
                                        "column": 13
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ReturnStatement",
                                        "start": 31764,
                                        "end": 31771,
                                        "loc": {
                                          "start": {
                                            "line": 761,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 761,
                                            "column": 23
                                          }
                                        },
                                        "argument": null
                                      }
                                    ]
                                  },
                                  "alternate": null
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 31798,
                                  "end": 31834,
                                  "loc": {
                                    "start": {
                                      "line": 763,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 763,
                                      "column": 48
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 31798,
                                    "end": 31833,
                                    "loc": {
                                      "start": {
                                        "line": 763,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 763,
                                        "column": 47
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 31798,
                                      "end": 31817,
                                      "loc": {
                                        "start": {
                                          "line": 763,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 763,
                                          "column": 31
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 31798,
                                        "end": 31804,
                                        "loc": {
                                          "start": {
                                            "line": 763,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 763,
                                            "column": 18
                                          }
                                        },
                                        "name": "object"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 31805,
                                        "end": 31817,
                                        "loc": {
                                          "start": {
                                            "line": 763,
                                            "column": 19
                                          },
                                          "end": {
                                            "line": 763,
                                            "column": 31
                                          }
                                        },
                                        "name": "addStateDiff"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 31818,
                                        "end": 31825,
                                        "loc": {
                                          "start": {
                                            "line": 763,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 763,
                                            "column": 39
                                          }
                                        },
                                        "name": "subDiff"
                                      },
                                      {
                                        "type": "Identifier",
                                        "start": 31827,
                                        "end": 31832,
                                        "loc": {
                                          "start": {
                                            "line": 763,
                                            "column": 41
                                          },
                                          "end": {
                                            "line": 763,
                                            "column": 46
                                          }
                                        },
                                        "name": "alpha"
                                      }
                                    ]
                                  }
                                }
                              ]
                            }
                          },
                          {
                            "type": "ThisExpression",
                            "start": 31846,
                            "end": 31850,
                            "loc": {
                              "start": {
                                "line": 764,
                                "column": 11
                              },
                              "end": {
                                "line": 764,
                                "column": 15
                              }
                            }
                          }
                        ]
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " geometry of any object (even not in stateDiff) could have been invalidated",
                          "start": 31861,
                          "end": 31938,
                          "loc": {
                            "start": {
                              "line": 765,
                              "column": 8
                            },
                            "end": {
                              "line": 765,
                              "column": 85
                            }
                          },
                          "range": [
                            31861,
                            31938
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ForOfStatement",
                      "start": 31947,
                      "end": 32029,
                      "loc": {
                        "start": {
                          "line": 766,
                          "column": 8
                        },
                        "end": {
                          "line": 767,
                          "column": 36
                        }
                      },
                      "left": {
                        "type": "VariableDeclaration",
                        "start": 31952,
                        "end": 31962,
                        "loc": {
                          "start": {
                            "line": 766,
                            "column": 13
                          },
                          "end": {
                            "line": 766,
                            "column": 23
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 31956,
                            "end": 31962,
                            "loc": {
                              "start": {
                                "line": 766,
                                "column": 17
                              },
                              "end": {
                                "line": 766,
                                "column": 23
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 31956,
                              "end": 31962,
                              "loc": {
                                "start": {
                                  "line": 766,
                                  "column": 17
                                },
                                "end": {
                                  "line": 766,
                                  "column": 23
                                }
                              },
                              "name": "object",
                              "leadingComments": null
                            },
                            "init": null,
                            "leadingComments": null
                          }
                        ],
                        "kind": "var",
                        "leadingComments": null
                      },
                      "right": {
                        "type": "CallExpression",
                        "start": 31966,
                        "end": 31991,
                        "loc": {
                          "start": {
                            "line": 766,
                            "column": 27
                          },
                          "end": {
                            "line": 766,
                            "column": 52
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 31966,
                          "end": 31989,
                          "loc": {
                            "start": {
                              "line": 766,
                              "column": 27
                            },
                            "end": {
                              "line": 766,
                              "column": 50
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 31966,
                            "end": 31970,
                            "loc": {
                              "start": {
                                "line": 766,
                                "column": 27
                              },
                              "end": {
                                "line": 766,
                                "column": 31
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 31971,
                            "end": 31989,
                            "loc": {
                              "start": {
                                "line": 766,
                                "column": 32
                              },
                              "end": {
                                "line": 766,
                                "column": 50
                              }
                            },
                            "name": "getObjectsOnSketch"
                          },
                          "computed": false
                        },
                        "arguments": []
                      },
                      "body": {
                        "type": "ExpressionStatement",
                        "start": 32005,
                        "end": 32029,
                        "loc": {
                          "start": {
                            "line": 767,
                            "column": 12
                          },
                          "end": {
                            "line": 767,
                            "column": 36
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 32005,
                          "end": 32028,
                          "loc": {
                            "start": {
                              "line": 767,
                              "column": 12
                            },
                            "end": {
                              "line": 767,
                              "column": 35
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 32005,
                            "end": 32026,
                            "loc": {
                              "start": {
                                "line": 767,
                                "column": 12
                              },
                              "end": {
                                "line": 767,
                                "column": 33
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 32005,
                              "end": 32011,
                              "loc": {
                                "start": {
                                  "line": 767,
                                  "column": 12
                                },
                                "end": {
                                  "line": 767,
                                  "column": 18
                                }
                              },
                              "name": "object"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 32012,
                              "end": 32026,
                              "loc": {
                                "start": {
                                  "line": 767,
                                  "column": 19
                                },
                                "end": {
                                  "line": 767,
                                  "column": 33
                                }
                              },
                              "name": "updateGeometry"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " geometry of any object (even not in stateDiff) could have been invalidated",
                          "start": 31861,
                          "end": 31938,
                          "loc": {
                            "start": {
                              "line": 765,
                              "column": 8
                            },
                            "end": {
                              "line": 765,
                              "column": 85
                            }
                          },
                          "range": [
                            31861,
                            31938
                          ]
                        }
                      ]
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 32041,
              "end": 32236,
              "loc": {
                "start": {
                  "line": 770,
                  "column": 4
                },
                "end": {
                  "line": 776,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 32041,
                "end": 32057,
                "loc": {
                  "start": {
                    "line": 770,
                    "column": 4
                  },
                  "end": {
                    "line": 770,
                    "column": 20
                  }
                },
                "name": "finishedUpdating"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 32057,
                "end": 32236,
                "loc": {
                  "start": {
                    "line": 770,
                    "column": 20
                  },
                  "end": {
                    "line": 776,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 32060,
                  "end": 32236,
                  "loc": {
                    "start": {
                      "line": 770,
                      "column": 23
                    },
                    "end": {
                      "line": 776,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 32070,
                      "end": 32206,
                      "loc": {
                        "start": {
                          "line": 771,
                          "column": 8
                        },
                        "end": {
                          "line": 774,
                          "column": 29
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 32074,
                        "end": 32110,
                        "loc": {
                          "start": {
                            "line": 771,
                            "column": 12
                          },
                          "end": {
                            "line": 771,
                            "column": 48
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 32074,
                          "end": 32101,
                          "loc": {
                            "start": {
                              "line": 771,
                              "column": 12
                            },
                            "end": {
                              "line": 771,
                              "column": 39
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 32074,
                            "end": 32087,
                            "loc": {
                              "start": {
                                "line": 771,
                                "column": 12
                              },
                              "end": {
                                "line": 771,
                                "column": 25
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 32074,
                              "end": 32078,
                              "loc": {
                                "start": {
                                  "line": 771,
                                  "column": 12
                                },
                                "end": {
                                  "line": 771,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 32079,
                              "end": 32087,
                              "loc": {
                                "start": {
                                  "line": 771,
                                  "column": 17
                                },
                                "end": {
                                  "line": 771,
                                  "column": 25
                                }
                              },
                              "name": "sketcher"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 32088,
                            "end": 32101,
                            "loc": {
                              "start": {
                                "line": 771,
                                "column": 26
                              },
                              "end": {
                                "line": 771,
                                "column": 39
                              }
                            },
                            "name": "currentSketch"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "ThisExpression",
                          "start": 32106,
                          "end": 32110,
                          "loc": {
                            "start": {
                              "line": 771,
                              "column": 44
                            },
                            "end": {
                              "line": 771,
                              "column": 48
                            }
                          }
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 32144,
                        "end": 32163,
                        "loc": {
                          "start": {
                            "line": 772,
                            "column": 12
                          },
                          "end": {
                            "line": 772,
                            "column": 31
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 32144,
                          "end": 32162,
                          "loc": {
                            "start": {
                              "line": 772,
                              "column": 12
                            },
                            "end": {
                              "line": 772,
                              "column": 30
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 32144,
                            "end": 32160,
                            "loc": {
                              "start": {
                                "line": 772,
                                "column": 12
                              },
                              "end": {
                                "line": 772,
                                "column": 28
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 32144,
                              "end": 32148,
                              "loc": {
                                "start": {
                                  "line": 772,
                                  "column": 12
                                },
                                "end": {
                                  "line": 772,
                                  "column": 16
                                }
                              },
                              "leadingComments": null
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 32149,
                              "end": 32160,
                              "loc": {
                                "start": {
                                  "line": 772,
                                  "column": 17
                                },
                                "end": {
                                  "line": 772,
                                  "column": 28
                                }
                              },
                              "name": "infiniteBox"
                            },
                            "computed": false,
                            "leadingComments": null
                          },
                          "arguments": [],
                          "leadingComments": null
                        },
                        "leadingComments": [
                          {
                            "type": "CommentLine",
                            "value": " FIXME less hacky",
                            "start": 32112,
                            "end": 32131,
                            "loc": {
                              "start": {
                                "line": 771,
                                "column": 50
                              },
                              "end": {
                                "line": 771,
                                "column": 69
                              }
                            },
                            "range": [
                              32112,
                              32131
                            ]
                          }
                        ]
                      },
                      "alternate": {
                        "type": "ExpressionStatement",
                        "start": 32189,
                        "end": 32206,
                        "loc": {
                          "start": {
                            "line": 774,
                            "column": 12
                          },
                          "end": {
                            "line": 774,
                            "column": 29
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 32189,
                          "end": 32205,
                          "loc": {
                            "start": {
                              "line": 774,
                              "column": 12
                            },
                            "end": {
                              "line": 774,
                              "column": 28
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 32189,
                            "end": 32203,
                            "loc": {
                              "start": {
                                "line": 774,
                                "column": 12
                              },
                              "end": {
                                "line": 774,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 32189,
                              "end": 32193,
                              "loc": {
                                "start": {
                                  "line": 774,
                                  "column": 12
                                },
                                "end": {
                                  "line": 774,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 32194,
                              "end": 32203,
                              "loc": {
                                "start": {
                                  "line": 774,
                                  "column": 17
                                },
                                "end": {
                                  "line": 774,
                                  "column": 26
                                }
                              },
                              "name": "updateBox"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 32215,
                      "end": 32230,
                      "loc": {
                        "start": {
                          "line": 775,
                          "column": 8
                        },
                        "end": {
                          "line": 775,
                          "column": 23
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 32215,
                        "end": 32229,
                        "loc": {
                          "start": {
                            "line": 775,
                            "column": 8
                          },
                          "end": {
                            "line": 775,
                            "column": 22
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 32215,
                          "end": 32227,
                          "loc": {
                            "start": {
                              "line": 775,
                              "column": 8
                            },
                            "end": {
                              "line": 775,
                              "column": 20
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 32215,
                            "end": 32219,
                            "loc": {
                              "start": {
                                "line": 775,
                                "column": 8
                              },
                              "end": {
                                "line": 775,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 32220,
                            "end": 32227,
                            "loc": {
                              "start": {
                                "line": 775,
                                "column": 13
                              },
                              "end": {
                                "line": 775,
                                "column": 20
                              }
                            },
                            "name": "showBox"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 32242,
              "end": 32911,
              "loc": {
                "start": {
                  "line": 778,
                  "column": 4
                },
                "end": {
                  "line": 789,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 32248,
                "end": 32264,
                "loc": {
                  "start": {
                    "line": 778,
                    "column": 10
                  },
                  "end": {
                    "line": 778,
                    "column": 26
                  }
                },
                "name": "updateFromServer"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 32264,
                "end": 32911,
                "loc": {
                  "start": {
                    "line": 778,
                    "column": 26
                  },
                  "end": {
                    "line": 789,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 32265,
                    "end": 32271,
                    "loc": {
                      "start": {
                        "line": 778,
                        "column": 27
                      },
                      "end": {
                        "line": 778,
                        "column": 33
                      }
                    },
                    "name": "server"
                  },
                  {
                    "type": "Identifier",
                    "start": 32273,
                    "end": 32291,
                    "loc": {
                      "start": {
                        "line": 778,
                        "column": 35
                      },
                      "end": {
                        "line": 778,
                        "column": 53
                      }
                    },
                    "name": "preparedStatements"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 32293,
                  "end": 32911,
                  "loc": {
                    "start": {
                      "line": 778,
                      "column": 55
                    },
                    "end": {
                      "line": 789,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 32303,
                      "end": 32329,
                      "loc": {
                        "start": {
                          "line": 779,
                          "column": 8
                        },
                        "end": {
                          "line": 779,
                          "column": 34
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 32307,
                          "end": 32328,
                          "loc": {
                            "start": {
                              "line": 779,
                              "column": 12
                            },
                            "end": {
                              "line": 779,
                              "column": 33
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 32307,
                            "end": 32311,
                            "loc": {
                              "start": {
                                "line": 779,
                                "column": 12
                              },
                              "end": {
                                "line": 779,
                                "column": 16
                              }
                            },
                            "name": "part"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 32314,
                            "end": 32328,
                            "loc": {
                              "start": {
                                "line": 779,
                                "column": 19
                              },
                              "end": {
                                "line": 779,
                                "column": 33
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 32314,
                              "end": 32326,
                              "loc": {
                                "start": {
                                  "line": 779,
                                  "column": 19
                                },
                                "end": {
                                  "line": 779,
                                  "column": 31
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 32314,
                                "end": 32318,
                                "loc": {
                                  "start": {
                                    "line": 779,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 779,
                                    "column": 23
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 32319,
                                "end": 32326,
                                "loc": {
                                  "start": {
                                    "line": 779,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 779,
                                    "column": 31
                                  }
                                },
                                "name": "getPart"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 32338,
                      "end": 32605,
                      "loc": {
                        "start": {
                          "line": 780,
                          "column": 8
                        },
                        "end": {
                          "line": 783,
                          "column": 11
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 32342,
                          "end": 32604,
                          "loc": {
                            "start": {
                              "line": 780,
                              "column": 12
                            },
                            "end": {
                              "line": 783,
                              "column": 10
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 32342,
                            "end": 32352,
                            "loc": {
                              "start": {
                                "line": 780,
                                "column": 12
                              },
                              "end": {
                                "line": 780,
                                "column": 22
                              }
                            },
                            "name": "statements"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 32355,
                            "end": 32604,
                            "loc": {
                              "start": {
                                "line": 780,
                                "column": 25
                              },
                              "end": {
                                "line": 783,
                                "column": 10
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 32355,
                              "end": 32388,
                              "loc": {
                                "start": {
                                  "line": 780,
                                  "column": 25
                                },
                                "end": {
                                  "line": 780,
                                  "column": 58
                                }
                              },
                              "object": {
                                "type": "LogicalExpression",
                                "start": 32356,
                                "end": 32380,
                                "loc": {
                                  "start": {
                                    "line": 780,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 780,
                                    "column": 50
                                  }
                                },
                                "left": {
                                  "type": "Identifier",
                                  "start": 32356,
                                  "end": 32374,
                                  "loc": {
                                    "start": {
                                      "line": 780,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 780,
                                      "column": 44
                                    }
                                  },
                                  "name": "preparedStatements"
                                },
                                "operator": "||",
                                "right": {
                                  "type": "ArrayExpression",
                                  "start": 32378,
                                  "end": 32380,
                                  "loc": {
                                    "start": {
                                      "line": 780,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 780,
                                      "column": 50
                                    }
                                  },
                                  "elements": []
                                },
                                "parenthesizedExpression": true
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 32382,
                                "end": 32388,
                                "loc": {
                                  "start": {
                                    "line": 780,
                                    "column": 52
                                  },
                                  "end": {
                                    "line": 780,
                                    "column": 58
                                  }
                                },
                                "name": "concat"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "ArrayExpression",
                                "start": 32389,
                                "end": 32603,
                                "loc": {
                                  "start": {
                                    "line": 780,
                                    "column": 59
                                  },
                                  "end": {
                                    "line": 783,
                                    "column": 9
                                  }
                                },
                                "elements": [
                                  {
                                    "type": "CallExpression",
                                    "start": 32403,
                                    "end": 32445,
                                    "loc": {
                                      "start": {
                                        "line": 781,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 781,
                                        "column": 54
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 32403,
                                      "end": 32433,
                                      "loc": {
                                        "start": {
                                          "line": 781,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 781,
                                          "column": 42
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 32403,
                                        "end": 32410,
                                        "loc": {
                                          "start": {
                                            "line": 781,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 781,
                                            "column": 19
                                          }
                                        },
                                        "name": "Interop"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 32411,
                                        "end": 32433,
                                        "loc": {
                                          "start": {
                                            "line": 781,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 781,
                                            "column": 42
                                          }
                                        },
                                        "name": "CreateSketchDimensions"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "ThisExpression",
                                        "start": 32434,
                                        "end": 32438,
                                        "loc": {
                                          "start": {
                                            "line": 781,
                                            "column": 43
                                          },
                                          "end": {
                                            "line": 781,
                                            "column": 47
                                          }
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 32440,
                                        "end": 32444,
                                        "loc": {
                                          "start": {
                                            "line": 781,
                                            "column": 49
                                          },
                                          "end": {
                                            "line": 781,
                                            "column": 53
                                          }
                                        },
                                        "value": true,
                                        "rawValue": true,
                                        "raw": "true"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 32482,
                                    "end": 32526,
                                    "loc": {
                                      "start": {
                                        "line": 782,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 782,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 32482,
                                      "end": 32520,
                                      "loc": {
                                        "start": {
                                          "line": 782,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 782,
                                          "column": 50
                                        }
                                      },
                                      "object": {
                                        "type": "CallExpression",
                                        "start": 32482,
                                        "end": 32506,
                                        "loc": {
                                          "start": {
                                            "line": 782,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 782,
                                            "column": 36
                                          }
                                        },
                                        "callee": {
                                          "type": "Identifier",
                                          "start": 32482,
                                          "end": 32500,
                                          "loc": {
                                            "start": {
                                              "line": 782,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 782,
                                              "column": 30
                                            }
                                          },
                                          "name": "getObjectStatement",
                                          "leadingComments": null
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 32501,
                                            "end": 32505,
                                            "loc": {
                                              "start": {
                                                "line": 782,
                                                "column": 31
                                              },
                                              "end": {
                                                "line": 782,
                                                "column": 35
                                              }
                                            },
                                            "name": "part"
                                          }
                                        ],
                                        "leadingComments": null
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 32507,
                                        "end": 32520,
                                        "loc": {
                                          "start": {
                                            "line": 782,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 782,
                                            "column": 50
                                          }
                                        },
                                        "name": "parseToObject"
                                      },
                                      "computed": false,
                                      "leadingComments": null
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 32521,
                                        "end": 32525,
                                        "loc": {
                                          "start": {
                                            "line": 782,
                                            "column": 51
                                          },
                                          "end": {
                                            "line": 782,
                                            "column": 55
                                          }
                                        },
                                        "name": "part"
                                      }
                                    ],
                                    "leadingComments": [
                                      {
                                        "type": "CommentLine",
                                        "value": " recreate dimensions",
                                        "start": 32447,
                                        "end": 32469,
                                        "loc": {
                                          "start": {
                                            "line": 781,
                                            "column": 56
                                          },
                                          "end": {
                                            "line": 781,
                                            "column": 78
                                          }
                                        },
                                        "range": [
                                          32447,
                                          32469
                                        ]
                                      }
                                    ]
                                  }
                                ]
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 32614,
                      "end": 32637,
                      "loc": {
                        "start": {
                          "line": 784,
                          "column": 8
                        },
                        "end": {
                          "line": 784,
                          "column": 31
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 32618,
                          "end": 32636,
                          "loc": {
                            "start": {
                              "line": 784,
                              "column": 12
                            },
                            "end": {
                              "line": 784,
                              "column": 30
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 32618,
                            "end": 32631,
                            "loc": {
                              "start": {
                                "line": 784,
                                "column": 12
                              },
                              "end": {
                                "line": 784,
                                "column": 25
                              }
                            },
                            "name": "newDimensions",
                            "leadingComments": null
                          },
                          "init": {
                            "type": "ArrayExpression",
                            "start": 32634,
                            "end": 32636,
                            "loc": {
                              "start": {
                                "line": 784,
                                "column": 28
                              },
                              "end": {
                                "line": 784,
                                "column": 30
                              }
                            },
                            "elements": []
                          },
                          "leadingComments": null
                        }
                      ],
                      "kind": "var",
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " update sketch and related sets (expression/geometry/dimension)",
                          "start": 32528,
                          "end": 32593,
                          "loc": {
                            "start": {
                              "line": 782,
                              "column": 58
                            },
                            "end": {
                              "line": 782,
                              "column": 123
                            }
                          },
                          "range": [
                            32528,
                            32593
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 32646,
                      "end": 32765,
                      "loc": {
                        "start": {
                          "line": 785,
                          "column": 8
                        },
                        "end": {
                          "line": 785,
                          "column": 127
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 32650,
                          "end": 32764,
                          "loc": {
                            "start": {
                              "line": 785,
                              "column": 12
                            },
                            "end": {
                              "line": 785,
                              "column": 126
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 32650,
                            "end": 32657,
                            "loc": {
                              "start": {
                                "line": 785,
                                "column": 12
                              },
                              "end": {
                                "line": 785,
                                "column": 19
                              }
                            },
                            "name": "results"
                          },
                          "init": {
                            "type": "AwaitExpression",
                            "start": 32660,
                            "end": 32764,
                            "loc": {
                              "start": {
                                "line": 785,
                                "column": 22
                              },
                              "end": {
                                "line": 785,
                                "column": 126
                              }
                            },
                            "all": false,
                            "argument": {
                              "type": "CallExpression",
                              "start": 32666,
                              "end": 32764,
                              "loc": {
                                "start": {
                                  "line": 785,
                                  "column": 28
                                },
                                "end": {
                                  "line": 785,
                                  "column": 126
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 32666,
                                "end": 32681,
                                "loc": {
                                  "start": {
                                    "line": 785,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 785,
                                    "column": 43
                                  }
                                },
                                "name": "executePrepared"
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 32682,
                                  "end": 32688,
                                  "loc": {
                                    "start": {
                                      "line": 785,
                                      "column": 44
                                    },
                                    "end": {
                                      "line": 785,
                                      "column": 50
                                    }
                                  },
                                  "name": "server"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 32690,
                                  "end": 32700,
                                  "loc": {
                                    "start": {
                                      "line": 785,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 785,
                                      "column": 62
                                    }
                                  },
                                  "name": "statements"
                                },
                                {
                                  "type": "ArrowFunctionExpression",
                                  "start": 32702,
                                  "end": 32763,
                                  "loc": {
                                    "start": {
                                      "line": 785,
                                      "column": 64
                                    },
                                    "end": {
                                      "line": 785,
                                      "column": 125
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": true,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 32703,
                                      "end": 32708,
                                      "loc": {
                                        "start": {
                                          "line": 785,
                                          "column": 65
                                        },
                                        "end": {
                                          "line": 785,
                                          "column": 70
                                        }
                                      },
                                      "name": "input"
                                    }
                                  ],
                                  "body": {
                                    "type": "CallExpression",
                                    "start": 32713,
                                    "end": 32763,
                                    "loc": {
                                      "start": {
                                        "line": 785,
                                        "column": 75
                                      },
                                      "end": {
                                        "line": 785,
                                        "column": 125
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 32713,
                                      "end": 32741,
                                      "loc": {
                                        "start": {
                                          "line": 785,
                                          "column": 75
                                        },
                                        "end": {
                                          "line": 785,
                                          "column": 103
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 32713,
                                        "end": 32717,
                                        "loc": {
                                          "start": {
                                            "line": 785,
                                            "column": 75
                                          },
                                          "end": {
                                            "line": 785,
                                            "column": 79
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 32718,
                                        "end": 32741,
                                        "loc": {
                                          "start": {
                                            "line": 785,
                                            "column": 80
                                          },
                                          "end": {
                                            "line": 785,
                                            "column": 103
                                          }
                                        },
                                        "name": "updateDimensionsFactory"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 32742,
                                        "end": 32747,
                                        "loc": {
                                          "start": {
                                            "line": 785,
                                            "column": 104
                                          },
                                          "end": {
                                            "line": 785,
                                            "column": 109
                                          }
                                        },
                                        "name": "input"
                                      },
                                      {
                                        "type": "Identifier",
                                        "start": 32749,
                                        "end": 32762,
                                        "loc": {
                                          "start": {
                                            "line": 785,
                                            "column": 111
                                          },
                                          "end": {
                                            "line": 785,
                                            "column": 124
                                          }
                                        },
                                        "name": "newDimensions"
                                      }
                                    ]
                                  }
                                }
                              ]
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 32774,
                      "end": 32835,
                      "loc": {
                        "start": {
                          "line": 786,
                          "column": 8
                        },
                        "end": {
                          "line": 786,
                          "column": 69
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 32774,
                        "end": 32834,
                        "loc": {
                          "start": {
                            "line": 786,
                            "column": 8
                          },
                          "end": {
                            "line": 786,
                            "column": 68
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 32774,
                          "end": 32798,
                          "loc": {
                            "start": {
                              "line": 786,
                              "column": 8
                            },
                            "end": {
                              "line": 786,
                              "column": 32
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 32774,
                            "end": 32791,
                            "loc": {
                              "start": {
                                "line": 786,
                                "column": 8
                              },
                              "end": {
                                "line": 786,
                                "column": 25
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 32774,
                              "end": 32778,
                              "loc": {
                                "start": {
                                  "line": 786,
                                  "column": 8
                                },
                                "end": {
                                  "line": 786,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 32779,
                              "end": 32791,
                              "loc": {
                                "start": {
                                  "line": 786,
                                  "column": 13
                                },
                                "end": {
                                  "line": 786,
                                  "column": 25
                                }
                              },
                              "name": "__dimensions"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 32792,
                            "end": 32798,
                            "loc": {
                              "start": {
                                "line": 786,
                                "column": 26
                              },
                              "end": {
                                "line": 786,
                                "column": 32
                              }
                            },
                            "name": "remove"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 32799,
                            "end": 32833,
                            "loc": {
                              "start": {
                                "line": 786,
                                "column": 33
                              },
                              "end": {
                                "line": 786,
                                "column": 67
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 32799,
                              "end": 32831,
                              "loc": {
                                "start": {
                                  "line": 786,
                                  "column": 33
                                },
                                "end": {
                                  "line": 786,
                                  "column": 65
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 32799,
                                "end": 32825,
                                "loc": {
                                  "start": {
                                    "line": 786,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 786,
                                    "column": 59
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 32799,
                                  "end": 32816,
                                  "loc": {
                                    "start": {
                                      "line": 786,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 786,
                                      "column": 50
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 32799,
                                    "end": 32803,
                                    "loc": {
                                      "start": {
                                        "line": 786,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 786,
                                        "column": 37
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 32804,
                                    "end": 32816,
                                    "loc": {
                                      "start": {
                                        "line": 786,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 786,
                                        "column": 50
                                      }
                                    },
                                    "name": "__dimensions"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 32817,
                                  "end": 32825,
                                  "loc": {
                                    "start": {
                                      "line": 786,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 786,
                                      "column": 59
                                    }
                                  },
                                  "name": "children"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 32826,
                                "end": 32831,
                                "loc": {
                                  "start": {
                                    "line": 786,
                                    "column": 60
                                  },
                                  "end": {
                                    "line": 786,
                                    "column": 65
                                  }
                                },
                                "name": "slice"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 32844,
                      "end": 32881,
                      "loc": {
                        "start": {
                          "line": 787,
                          "column": 8
                        },
                        "end": {
                          "line": 787,
                          "column": 45
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 32844,
                        "end": 32880,
                        "loc": {
                          "start": {
                            "line": 787,
                            "column": 8
                          },
                          "end": {
                            "line": 787,
                            "column": 44
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 32844,
                          "end": 32865,
                          "loc": {
                            "start": {
                              "line": 787,
                              "column": 8
                            },
                            "end": {
                              "line": 787,
                              "column": 29
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 32844,
                            "end": 32861,
                            "loc": {
                              "start": {
                                "line": 787,
                                "column": 8
                              },
                              "end": {
                                "line": 787,
                                "column": 25
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 32844,
                              "end": 32848,
                              "loc": {
                                "start": {
                                  "line": 787,
                                  "column": 8
                                },
                                "end": {
                                  "line": 787,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 32849,
                              "end": 32861,
                              "loc": {
                                "start": {
                                  "line": 787,
                                  "column": 13
                                },
                                "end": {
                                  "line": 787,
                                  "column": 25
                                }
                              },
                              "name": "__dimensions"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 32862,
                            "end": 32865,
                            "loc": {
                              "start": {
                                "line": 787,
                                "column": 26
                              },
                              "end": {
                                "line": 787,
                                "column": 29
                              }
                            },
                            "name": "add"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 32866,
                            "end": 32879,
                            "loc": {
                              "start": {
                                "line": 787,
                                "column": 30
                              },
                              "end": {
                                "line": 787,
                                "column": 43
                              }
                            },
                            "name": "newDimensions"
                          }
                        ]
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 32890,
                      "end": 32905,
                      "loc": {
                        "start": {
                          "line": 788,
                          "column": 8
                        },
                        "end": {
                          "line": 788,
                          "column": 23
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 32897,
                        "end": 32904,
                        "loc": {
                          "start": {
                            "line": 788,
                            "column": 15
                          },
                          "end": {
                            "line": 788,
                            "column": 22
                          }
                        },
                        "name": "results"
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 32917,
              "end": 33209,
              "loc": {
                "start": {
                  "line": 791,
                  "column": 4
                },
                "end": {
                  "line": 795,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 32917,
                "end": 32933,
                "loc": {
                  "start": {
                    "line": 791,
                    "column": 4
                  },
                  "end": {
                    "line": 791,
                    "column": 20
                  }
                },
                "name": "solveConstraints"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 32933,
                "end": 33209,
                "loc": {
                  "start": {
                    "line": 791,
                    "column": 20
                  },
                  "end": {
                    "line": 795,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 32936,
                  "end": 33209,
                  "loc": {
                    "start": {
                      "line": 791,
                      "column": 23
                    },
                    "end": {
                      "line": 795,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 33102,
                      "end": 33203,
                      "loc": {
                        "start": {
                          "line": 794,
                          "column": 8
                        },
                        "end": {
                          "line": 794,
                          "column": 109
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 33109,
                        "end": 33202,
                        "loc": {
                          "start": {
                            "line": 794,
                            "column": 15
                          },
                          "end": {
                            "line": 794,
                            "column": 108
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 33109,
                          "end": 33191,
                          "loc": {
                            "start": {
                              "line": 794,
                              "column": 15
                            },
                            "end": {
                              "line": 794,
                              "column": 97
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 33109,
                            "end": 33186,
                            "loc": {
                              "start": {
                                "line": 794,
                                "column": 15
                              },
                              "end": {
                                "line": 794,
                                "column": 92
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 33109,
                              "end": 33130,
                              "loc": {
                                "start": {
                                  "line": 794,
                                  "column": 15
                                },
                                "end": {
                                  "line": 794,
                                  "column": 36
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 33109,
                                "end": 33113,
                                "loc": {
                                  "start": {
                                    "line": 794,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 794,
                                    "column": 19
                                  }
                                },
                                "leadingComments": null
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 33114,
                                "end": 33130,
                                "loc": {
                                  "start": {
                                    "line": 794,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 794,
                                    "column": 36
                                  }
                                },
                                "name": "updateFromServer"
                              },
                              "computed": false,
                              "leadingComments": null
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 33131,
                                "end": 33151,
                                "loc": {
                                  "start": {
                                    "line": 794,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 794,
                                    "column": 57
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 33131,
                                  "end": 33144,
                                  "loc": {
                                    "start": {
                                      "line": 794,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 794,
                                      "column": 50
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 33131,
                                    "end": 33135,
                                    "loc": {
                                      "start": {
                                        "line": 794,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 794,
                                        "column": 41
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 33136,
                                    "end": 33144,
                                    "loc": {
                                      "start": {
                                        "line": 794,
                                        "column": 42
                                      },
                                      "end": {
                                        "line": 794,
                                        "column": 50
                                      }
                                    },
                                    "name": "sketcher"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 33145,
                                  "end": 33151,
                                  "loc": {
                                    "start": {
                                      "line": 794,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 794,
                                      "column": 57
                                    }
                                  },
                                  "name": "server"
                                },
                                "computed": false
                              },
                              {
                                "type": "ArrayExpression",
                                "start": 33153,
                                "end": 33185,
                                "loc": {
                                  "start": {
                                    "line": 794,
                                    "column": 59
                                  },
                                  "end": {
                                    "line": 794,
                                    "column": 91
                                  }
                                },
                                "elements": [
                                  {
                                    "type": "CallExpression",
                                    "start": 33154,
                                    "end": 33184,
                                    "loc": {
                                      "start": {
                                        "line": 794,
                                        "column": 60
                                      },
                                      "end": {
                                        "line": 794,
                                        "column": 90
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 33154,
                                      "end": 33178,
                                      "loc": {
                                        "start": {
                                          "line": 794,
                                          "column": 60
                                        },
                                        "end": {
                                          "line": 794,
                                          "column": 84
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 33154,
                                        "end": 33161,
                                        "loc": {
                                          "start": {
                                            "line": 794,
                                            "column": 60
                                          },
                                          "end": {
                                            "line": 794,
                                            "column": 67
                                          }
                                        },
                                        "name": "Interop"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 33162,
                                        "end": 33178,
                                        "loc": {
                                          "start": {
                                            "line": 794,
                                            "column": 68
                                          },
                                          "end": {
                                            "line": 794,
                                            "column": 84
                                          }
                                        },
                                        "name": "SolveConstraints"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "ThisExpression",
                                        "start": 33179,
                                        "end": 33183,
                                        "loc": {
                                          "start": {
                                            "line": 794,
                                            "column": 85
                                          },
                                          "end": {
                                            "line": 794,
                                            "column": 89
                                          }
                                        }
                                      }
                                    ]
                                  }
                                ]
                              }
                            ],
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 33187,
                            "end": 33191,
                            "loc": {
                              "start": {
                                "line": 794,
                                "column": 93
                              },
                              "end": {
                                "line": 794,
                                "column": 97
                              }
                            },
                            "name": "then"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 33192,
                            "end": 33201,
                            "loc": {
                              "start": {
                                "line": 794,
                                "column": 98
                              },
                              "end": {
                                "line": 794,
                                "column": 107
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": true,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 33192,
                                "end": 33193,
                                "loc": {
                                  "start": {
                                    "line": 794,
                                    "column": 98
                                  },
                                  "end": {
                                    "line": 794,
                                    "column": 99
                                  }
                                },
                                "name": "r"
                              }
                            ],
                            "body": {
                              "type": "MemberExpression",
                              "start": 33197,
                              "end": 33201,
                              "loc": {
                                "start": {
                                  "line": 794,
                                  "column": 103
                                },
                                "end": {
                                  "line": 794,
                                  "column": 107
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 33197,
                                "end": 33198,
                                "loc": {
                                  "start": {
                                    "line": 794,
                                    "column": 103
                                  },
                                  "end": {
                                    "line": 794,
                                    "column": 104
                                  }
                                },
                                "name": "r"
                              },
                              "property": {
                                "type": "Literal",
                                "start": 33199,
                                "end": 33200,
                                "loc": {
                                  "start": {
                                    "line": 794,
                                    "column": 105
                                  },
                                  "end": {
                                    "line": 794,
                                    "column": 106
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              },
                              "computed": true
                            }
                          }
                        ],
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " return SolveConstraints result after calling updateFromServer",
                          "start": 32946,
                          "end": 33010,
                          "loc": {
                            "start": {
                              "line": 792,
                              "column": 8
                            },
                            "end": {
                              "line": 792,
                              "column": 72
                            }
                          },
                          "range": [
                            32946,
                            33010
                          ]
                        },
                        {
                          "type": "CommentLine",
                          "value": " see SketcherInterface.cclass for description of return values (0, 1, 2)",
                          "start": 33019,
                          "end": 33093,
                          "loc": {
                            "start": {
                              "line": 793,
                              "column": 8
                            },
                            "end": {
                              "line": 793,
                              "column": 82
                            }
                          },
                          "range": [
                            33019,
                            33093
                          ]
                        }
                      ]
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " for loop over object or objects, including child points",
                  "start": 33215,
                  "end": 33273,
                  "loc": {
                    "start": {
                      "line": 797,
                      "column": 4
                    },
                    "end": {
                      "line": 797,
                      "column": 62
                    }
                  },
                  "range": [
                    33215,
                    33273
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " if no callback specified, then all the objects are returned in array",
                  "start": 33278,
                  "end": 33349,
                  "loc": {
                    "start": {
                      "line": 798,
                      "column": 4
                    },
                    "end": {
                      "line": 798,
                      "column": 75
                    }
                  },
                  "range": [
                    33278,
                    33349
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 33354,
              "end": 33901,
              "loc": {
                "start": {
                  "line": 799,
                  "column": 4
                },
                "end": {
                  "line": 818,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 33361,
                "end": 33383,
                "loc": {
                  "start": {
                    "line": 799,
                    "column": 11
                  },
                  "end": {
                    "line": 799,
                    "column": 33
                  }
                },
                "name": "ForObjectsWithChildren"
              },
              "static": true,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 33383,
                "end": 33901,
                "loc": {
                  "start": {
                    "line": 799,
                    "column": 33
                  },
                  "end": {
                    "line": 818,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 33384,
                    "end": 33388,
                    "loc": {
                      "start": {
                        "line": 799,
                        "column": 34
                      },
                      "end": {
                        "line": 799,
                        "column": 38
                      }
                    },
                    "name": "objs"
                  },
                  {
                    "type": "Identifier",
                    "start": 33390,
                    "end": 33398,
                    "loc": {
                      "start": {
                        "line": 799,
                        "column": 40
                      },
                      "end": {
                        "line": 799,
                        "column": 48
                      }
                    },
                    "name": "callback"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 33400,
                  "end": 33901,
                  "loc": {
                    "start": {
                      "line": 799,
                      "column": 50
                    },
                    "end": {
                      "line": 818,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 33410,
                      "end": 33433,
                      "loc": {
                        "start": {
                          "line": 800,
                          "column": 8
                        },
                        "end": {
                          "line": 800,
                          "column": 31
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 33414,
                          "end": 33432,
                          "loc": {
                            "start": {
                              "line": 800,
                              "column": 12
                            },
                            "end": {
                              "line": 800,
                              "column": 30
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 33414,
                            "end": 33420,
                            "loc": {
                              "start": {
                                "line": 800,
                                "column": 12
                              },
                              "end": {
                                "line": 800,
                                "column": 18
                              }
                            },
                            "name": "result"
                          },
                          "init": {
                            "type": "Identifier",
                            "start": 33423,
                            "end": 33432,
                            "loc": {
                              "start": {
                                "line": 800,
                                "column": 21
                              },
                              "end": {
                                "line": 800,
                                "column": 30
                              }
                            },
                            "name": "undefined"
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 33442,
                      "end": 33543,
                      "loc": {
                        "start": {
                          "line": 801,
                          "column": 8
                        },
                        "end": {
                          "line": 804,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 33446,
                        "end": 33455,
                        "loc": {
                          "start": {
                            "line": 801,
                            "column": 12
                          },
                          "end": {
                            "line": 801,
                            "column": 21
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "Identifier",
                          "start": 33447,
                          "end": 33455,
                          "loc": {
                            "start": {
                              "line": 801,
                              "column": 13
                            },
                            "end": {
                              "line": 801,
                              "column": 21
                            }
                          },
                          "name": "callback"
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 33457,
                        "end": 33543,
                        "loc": {
                          "start": {
                            "line": 801,
                            "column": 23
                          },
                          "end": {
                            "line": 804,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 33471,
                            "end": 33483,
                            "loc": {
                              "start": {
                                "line": 802,
                                "column": 12
                              },
                              "end": {
                                "line": 802,
                                "column": 24
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 33471,
                              "end": 33482,
                              "loc": {
                                "start": {
                                  "line": 802,
                                  "column": 12
                                },
                                "end": {
                                  "line": 802,
                                  "column": 23
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "Identifier",
                                "start": 33471,
                                "end": 33477,
                                "loc": {
                                  "start": {
                                    "line": 802,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 802,
                                    "column": 18
                                  }
                                },
                                "name": "result"
                              },
                              "right": {
                                "type": "ArrayExpression",
                                "start": 33480,
                                "end": 33482,
                                "loc": {
                                  "start": {
                                    "line": 802,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 802,
                                    "column": 23
                                  }
                                },
                                "elements": []
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 33496,
                            "end": 33533,
                            "loc": {
                              "start": {
                                "line": 803,
                                "column": 12
                              },
                              "end": {
                                "line": 803,
                                "column": 49
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 33496,
                              "end": 33532,
                              "loc": {
                                "start": {
                                  "line": 803,
                                  "column": 12
                                },
                                "end": {
                                  "line": 803,
                                  "column": 48
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "Identifier",
                                "start": 33496,
                                "end": 33504,
                                "loc": {
                                  "start": {
                                    "line": 803,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 803,
                                    "column": 20
                                  }
                                },
                                "name": "callback"
                              },
                              "right": {
                                "type": "ArrowFunctionExpression",
                                "start": 33508,
                                "end": 33531,
                                "loc": {
                                  "start": {
                                    "line": 803,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 803,
                                    "column": 47
                                  }
                                },
                                "id": null,
                                "generator": false,
                                "expression": true,
                                "async": false,
                                "params": [
                                  {
                                    "type": "Identifier",
                                    "start": 33508,
                                    "end": 33511,
                                    "loc": {
                                      "start": {
                                        "line": 803,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 803,
                                        "column": 27
                                      }
                                    },
                                    "name": "obj"
                                  }
                                ],
                                "body": {
                                  "type": "CallExpression",
                                  "start": 33515,
                                  "end": 33531,
                                  "loc": {
                                    "start": {
                                      "line": 803,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 803,
                                      "column": 47
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 33515,
                                    "end": 33526,
                                    "loc": {
                                      "start": {
                                        "line": 803,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 803,
                                        "column": 42
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 33515,
                                      "end": 33521,
                                      "loc": {
                                        "start": {
                                          "line": 803,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 803,
                                          "column": 37
                                        }
                                      },
                                      "name": "result"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 33522,
                                      "end": 33526,
                                      "loc": {
                                        "start": {
                                          "line": 803,
                                          "column": 38
                                        },
                                        "end": {
                                          "line": 803,
                                          "column": 42
                                        }
                                      },
                                      "name": "push"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 33527,
                                      "end": 33530,
                                      "loc": {
                                        "start": {
                                          "line": 803,
                                          "column": 43
                                        },
                                        "end": {
                                          "line": 803,
                                          "column": 46
                                        }
                                      },
                                      "name": "obj"
                                    }
                                  ]
                                },
                                "parenthesizedExpression": true
                              }
                            }
                          }
                        ]
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 33553,
                      "end": 33576,
                      "loc": {
                        "start": {
                          "line": 806,
                          "column": 8
                        },
                        "end": {
                          "line": 806,
                          "column": 31
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 33553,
                        "end": 33575,
                        "loc": {
                          "start": {
                            "line": 806,
                            "column": 8
                          },
                          "end": {
                            "line": 806,
                            "column": 30
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 33553,
                          "end": 33557,
                          "loc": {
                            "start": {
                              "line": 806,
                              "column": 8
                            },
                            "end": {
                              "line": 806,
                              "column": 12
                            }
                          },
                          "name": "objs"
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 33560,
                          "end": 33575,
                          "loc": {
                            "start": {
                              "line": 806,
                              "column": 15
                            },
                            "end": {
                              "line": 806,
                              "column": 30
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 33560,
                            "end": 33569,
                            "loc": {
                              "start": {
                                "line": 806,
                                "column": 15
                              },
                              "end": {
                                "line": 806,
                                "column": 24
                              }
                            },
                            "object": {
                              "type": "ArrayExpression",
                              "start": 33560,
                              "end": 33562,
                              "loc": {
                                "start": {
                                  "line": 806,
                                  "column": 15
                                },
                                "end": {
                                  "line": 806,
                                  "column": 17
                                }
                              },
                              "elements": []
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 33563,
                              "end": 33569,
                              "loc": {
                                "start": {
                                  "line": 806,
                                  "column": 18
                                },
                                "end": {
                                  "line": 806,
                                  "column": 24
                                }
                              },
                              "name": "concat"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 33570,
                              "end": 33574,
                              "loc": {
                                "start": {
                                  "line": 806,
                                  "column": 25
                                },
                                "end": {
                                  "line": 806,
                                  "column": 29
                                }
                              },
                              "name": "objs"
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 33585,
                      "end": 33871,
                      "loc": {
                        "start": {
                          "line": 807,
                          "column": 8
                        },
                        "end": {
                          "line": 815,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 33585,
                        "end": 33870,
                        "loc": {
                          "start": {
                            "line": 807,
                            "column": 8
                          },
                          "end": {
                            "line": 815,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 33585,
                          "end": 33597,
                          "loc": {
                            "start": {
                              "line": 807,
                              "column": 8
                            },
                            "end": {
                              "line": 807,
                              "column": 20
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 33585,
                            "end": 33589,
                            "loc": {
                              "start": {
                                "line": 807,
                                "column": 8
                              },
                              "end": {
                                "line": 807,
                                "column": 12
                              }
                            },
                            "name": "objs"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 33590,
                            "end": 33597,
                            "loc": {
                              "start": {
                                "line": 807,
                                "column": 13
                              },
                              "end": {
                                "line": 807,
                                "column": 20
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 33598,
                            "end": 33869,
                            "loc": {
                              "start": {
                                "line": 807,
                                "column": 21
                              },
                              "end": {
                                "line": 815,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 33598,
                                "end": 33601,
                                "loc": {
                                  "start": {
                                    "line": 807,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 807,
                                    "column": 24
                                  }
                                },
                                "name": "obj"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 33605,
                              "end": 33869,
                              "loc": {
                                "start": {
                                  "line": 807,
                                  "column": 28
                                },
                                "end": {
                                  "line": 815,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "IfStatement",
                                  "start": 33619,
                                  "end": 33636,
                                  "loc": {
                                    "start": {
                                      "line": 808,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 808,
                                      "column": 29
                                    }
                                  },
                                  "test": {
                                    "type": "UnaryExpression",
                                    "start": 33623,
                                    "end": 33627,
                                    "loc": {
                                      "start": {
                                        "line": 808,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 808,
                                        "column": 20
                                      }
                                    },
                                    "operator": "!",
                                    "prefix": true,
                                    "argument": {
                                      "type": "Identifier",
                                      "start": 33624,
                                      "end": 33627,
                                      "loc": {
                                        "start": {
                                          "line": 808,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 808,
                                          "column": 20
                                        }
                                      },
                                      "name": "obj"
                                    }
                                  },
                                  "consequent": {
                                    "type": "ReturnStatement",
                                    "start": 33629,
                                    "end": 33636,
                                    "loc": {
                                      "start": {
                                        "line": 808,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 808,
                                        "column": 29
                                      }
                                    },
                                    "argument": null
                                  },
                                  "alternate": null
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 33649,
                                  "end": 33663,
                                  "loc": {
                                    "start": {
                                      "line": 809,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 809,
                                      "column": 26
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 33649,
                                    "end": 33662,
                                    "loc": {
                                      "start": {
                                        "line": 809,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 809,
                                        "column": 25
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 33649,
                                      "end": 33657,
                                      "loc": {
                                        "start": {
                                          "line": 809,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 809,
                                          "column": 20
                                        }
                                      },
                                      "name": "callback"
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 33658,
                                        "end": 33661,
                                        "loc": {
                                          "start": {
                                            "line": 809,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 809,
                                            "column": 24
                                          }
                                        },
                                        "name": "obj"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 33676,
                                  "end": 33709,
                                  "loc": {
                                    "start": {
                                      "line": 810,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 810,
                                      "column": 45
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 33680,
                                    "end": 33700,
                                    "loc": {
                                      "start": {
                                        "line": 810,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 810,
                                        "column": 36
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 33680,
                                      "end": 33683,
                                      "loc": {
                                        "start": {
                                          "line": 810,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 810,
                                          "column": 19
                                        }
                                      },
                                      "name": "obj"
                                    },
                                    "operator": "instanceof",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 33695,
                                      "end": 33700,
                                      "loc": {
                                        "start": {
                                          "line": 810,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 810,
                                          "column": 36
                                        }
                                      },
                                      "name": "Point"
                                    }
                                  },
                                  "consequent": {
                                    "type": "ReturnStatement",
                                    "start": 33702,
                                    "end": 33709,
                                    "loc": {
                                      "start": {
                                        "line": 810,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 810,
                                        "column": 45
                                      }
                                    },
                                    "argument": null
                                  },
                                  "alternate": null
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 33722,
                                  "end": 33783,
                                  "loc": {
                                    "start": {
                                      "line": 811,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 812,
                                      "column": 45
                                    }
                                  },
                                  "test": {
                                    "type": "MemberExpression",
                                    "start": 33726,
                                    "end": 33736,
                                    "loc": {
                                      "start": {
                                        "line": 811,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 811,
                                        "column": 26
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 33726,
                                      "end": 33729,
                                      "loc": {
                                        "start": {
                                          "line": 811,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 811,
                                          "column": 19
                                        }
                                      },
                                      "name": "obj"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 33730,
                                      "end": 33736,
                                      "loc": {
                                        "start": {
                                          "line": 811,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 811,
                                          "column": 26
                                        }
                                      },
                                      "name": "points"
                                    },
                                    "computed": false
                                  },
                                  "consequent": {
                                    "type": "ExpressionStatement",
                                    "start": 33754,
                                    "end": 33783,
                                    "loc": {
                                      "start": {
                                        "line": 812,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 812,
                                        "column": 45
                                      }
                                    },
                                    "expression": {
                                      "type": "CallExpression",
                                      "start": 33754,
                                      "end": 33782,
                                      "loc": {
                                        "start": {
                                          "line": 812,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 812,
                                          "column": 44
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 33754,
                                        "end": 33772,
                                        "loc": {
                                          "start": {
                                            "line": 812,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 812,
                                            "column": 34
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 33754,
                                          "end": 33764,
                                          "loc": {
                                            "start": {
                                              "line": 812,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 812,
                                              "column": 26
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 33754,
                                            "end": 33757,
                                            "loc": {
                                              "start": {
                                                "line": 812,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 812,
                                                "column": 19
                                              }
                                            },
                                            "name": "obj"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 33758,
                                            "end": 33764,
                                            "loc": {
                                              "start": {
                                                "line": 812,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 812,
                                                "column": 26
                                              }
                                            },
                                            "name": "points"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 33765,
                                          "end": 33772,
                                          "loc": {
                                            "start": {
                                              "line": 812,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 812,
                                              "column": 34
                                            }
                                          },
                                          "name": "forEach"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 33773,
                                          "end": 33781,
                                          "loc": {
                                            "start": {
                                              "line": 812,
                                              "column": 35
                                            },
                                            "end": {
                                              "line": 812,
                                              "column": 43
                                            }
                                          },
                                          "name": "callback"
                                        }
                                      ]
                                    }
                                  },
                                  "alternate": null
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 33796,
                                  "end": 33859,
                                  "loc": {
                                    "start": {
                                      "line": 813,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 814,
                                      "column": 42
                                    }
                                  },
                                  "test": {
                                    "type": "MemberExpression",
                                    "start": 33800,
                                    "end": 33815,
                                    "loc": {
                                      "start": {
                                        "line": 813,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 813,
                                        "column": 31
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 33800,
                                      "end": 33803,
                                      "loc": {
                                        "start": {
                                          "line": 813,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 813,
                                          "column": 19
                                        }
                                      },
                                      "name": "obj"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 33804,
                                      "end": 33815,
                                      "loc": {
                                        "start": {
                                          "line": 813,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 813,
                                          "column": 31
                                        }
                                      },
                                      "name": "centerPoint"
                                    },
                                    "computed": false
                                  },
                                  "consequent": {
                                    "type": "ExpressionStatement",
                                    "start": 33833,
                                    "end": 33859,
                                    "loc": {
                                      "start": {
                                        "line": 814,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 814,
                                        "column": 42
                                      }
                                    },
                                    "expression": {
                                      "type": "CallExpression",
                                      "start": 33833,
                                      "end": 33858,
                                      "loc": {
                                        "start": {
                                          "line": 814,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 814,
                                          "column": 41
                                        }
                                      },
                                      "callee": {
                                        "type": "Identifier",
                                        "start": 33833,
                                        "end": 33841,
                                        "loc": {
                                          "start": {
                                            "line": 814,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 814,
                                            "column": 24
                                          }
                                        },
                                        "name": "callback"
                                      },
                                      "arguments": [
                                        {
                                          "type": "MemberExpression",
                                          "start": 33842,
                                          "end": 33857,
                                          "loc": {
                                            "start": {
                                              "line": 814,
                                              "column": 25
                                            },
                                            "end": {
                                              "line": 814,
                                              "column": 40
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 33842,
                                            "end": 33845,
                                            "loc": {
                                              "start": {
                                                "line": 814,
                                                "column": 25
                                              },
                                              "end": {
                                                "line": 814,
                                                "column": 28
                                              }
                                            },
                                            "name": "obj"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 33846,
                                            "end": 33857,
                                            "loc": {
                                              "start": {
                                                "line": 814,
                                                "column": 29
                                              },
                                              "end": {
                                                "line": 814,
                                                "column": 40
                                              }
                                            },
                                            "name": "centerPoint"
                                          },
                                          "computed": false
                                        }
                                      ]
                                    }
                                  },
                                  "alternate": null
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 33881,
                      "end": 33895,
                      "loc": {
                        "start": {
                          "line": 817,
                          "column": 8
                        },
                        "end": {
                          "line": 817,
                          "column": 22
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 33888,
                        "end": 33894,
                        "loc": {
                          "start": {
                            "line": 817,
                            "column": 15
                          },
                          "end": {
                            "line": 817,
                            "column": 21
                          }
                        },
                        "name": "result"
                      }
                    }
                  ]
                }
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " for loop over object or objects, including child points",
                  "start": 33215,
                  "end": 33273,
                  "loc": {
                    "start": {
                      "line": 797,
                      "column": 4
                    },
                    "end": {
                      "line": 797,
                      "column": 62
                    }
                  },
                  "range": [
                    33215,
                    33273
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " if no callback specified, then all the objects are returned in array",
                  "start": 33278,
                  "end": 33349,
                  "loc": {
                    "start": {
                      "line": 798,
                      "column": 4
                    },
                    "end": {
                      "line": 798,
                      "column": 75
                    }
                  },
                  "range": [
                    33278,
                    33349
                  ]
                }
              ]
            }
          ]
        },
        "leadingComments": [],
        "trailingComments": []
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 33905,
      "end": 33955,
      "loc": {
        "start": {
          "line": 821,
          "column": 0
        },
        "end": {
          "line": 821,
          "column": 50
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 33905,
        "end": 33954,
        "loc": {
          "start": {
            "line": 821,
            "column": 0
          },
          "end": {
            "line": 821,
            "column": 49
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 33905,
          "end": 33945,
          "loc": {
            "start": {
              "line": 821,
              "column": 0
            },
            "end": {
              "line": 821,
              "column": 40
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 33905,
            "end": 33932,
            "loc": {
              "start": {
                "line": 821,
                "column": 0
              },
              "end": {
                "line": 821,
                "column": 27
              }
            },
            "object": {
              "type": "Identifier",
              "start": 33905,
              "end": 33919,
              "loc": {
                "start": {
                  "line": 821,
                  "column": 0
                },
                "end": {
                  "line": 821,
                  "column": 14
                }
              },
              "name": "ClassCadObject"
            },
            "property": {
              "type": "Identifier",
              "start": 33920,
              "end": 33932,
              "loc": {
                "start": {
                  "line": 821,
                  "column": 15
                },
                "end": {
                  "line": 821,
                  "column": 27
                }
              },
              "name": "classMapping"
            },
            "computed": false
          },
          "property": {
            "type": "Literal",
            "start": 33933,
            "end": 33944,
            "loc": {
              "start": {
                "line": 821,
                "column": 28
              },
              "end": {
                "line": 821,
                "column": 39
              }
            },
            "value": "CC_Sketch",
            "rawValue": "CC_Sketch",
            "raw": "'CC_Sketch'"
          },
          "computed": true
        },
        "right": {
          "type": "Identifier",
          "start": 33948,
          "end": 33954,
          "loc": {
            "start": {
              "line": 821,
              "column": 43
            },
            "end": {
              "line": 821,
              "column": 49
            }
          },
          "name": "Sketch"
        }
      }
    }
  ]
}