{
  "type": "Program",
  "start": 0,
  "end": 33783,
  "loc": {
    "start": {
      "line": 1,
      "column": 0
    },
    "end": {
      "line": 817,
      "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": 33730,
      "loc": {
        "start": {
          "line": 11,
          "column": 0
        },
        "end": {
          "line": 814,
          "column": 1
        }
      },
      "declaration": {
        "type": "ClassDeclaration",
        "start": 459,
        "end": 33730,
        "loc": {
          "start": {
            "line": 11,
            "column": 15
          },
          "end": {
            "line": 814,
            "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": 33730,
          "loc": {
            "start": {
              "line": 11,
              "column": 51
            },
            "end": {
              "line": 814,
              "column": 1
            }
          },
          "body": [
            {
              "type": "MethodDefinition",
              "start": 501,
              "end": 4025,
              "loc": {
                "start": {
                  "line": 12,
                  "column": 4
                },
                "end": {
                  "line": 80,
                  "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": 4025,
                "loc": {
                  "start": {
                    "line": 12,
                    "column": 15
                  },
                  "end": {
                    "line": 80,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 515,
                  "end": 4025,
                  "loc": {
                    "start": {
                      "line": 12,
                      "column": 18
                    },
                    "end": {
                      "line": 80,
                      "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": 3153,
                      "loc": {
                        "start": {
                          "line": 26,
                          "column": 8
                        },
                        "end": {
                          "line": 61,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 1320,
                        "end": 3152,
                        "loc": {
                          "start": {
                            "line": 26,
                            "column": 8
                          },
                          "end": {
                            "line": 61,
                            "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": 3151,
                            "loc": {
                              "start": {
                                "line": 28,
                                "column": 14
                              },
                              "end": {
                                "line": 61,
                                "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": 3140,
                                "loc": {
                                  "start": {
                                    "line": 35,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 60,
                                    "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": 3140,
                                  "loc": {
                                    "start": {
                                      "line": 35,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 60,
                                      "column": 13
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": false,
                                  "async": false,
                                  "params": [],
                                  "body": {
                                    "type": "BlockStatement",
                                    "start": 1770,
                                    "end": 3140,
                                    "loc": {
                                      "start": {
                                        "line": 35,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 60,
                                        "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": "ExpressionStatement",
                                        "start": 1872,
                                        "end": 1908,
                                        "loc": {
                                          "start": {
                                            "line": 39,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 39,
                                            "column": 52
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 1872,
                                          "end": 1907,
                                          "loc": {
                                            "start": {
                                              "line": 39,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 39,
                                              "column": 51
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 1872,
                                            "end": 1889,
                                            "loc": {
                                              "start": {
                                                "line": 39,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 39,
                                                "column": 33
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 1872,
                                              "end": 1878,
                                              "loc": {
                                                "start": {
                                                  "line": 39,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 39,
                                                  "column": 22
                                                }
                                              },
                                              "name": "sketch"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 1879,
                                              "end": 1889,
                                              "loc": {
                                                "start": {
                                                  "line": 39,
                                                  "column": 23
                                                },
                                                "end": {
                                                  "line": 39,
                                                  "column": 33
                                                }
                                              },
                                              "name": "updateGrid"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "MemberExpression",
                                              "start": 1890,
                                              "end": 1906,
                                              "loc": {
                                                "start": {
                                                  "line": 39,
                                                  "column": 34
                                                },
                                                "end": {
                                                  "line": 39,
                                                  "column": 50
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 1890,
                                                "end": 1901,
                                                "loc": {
                                                  "start": {
                                                    "line": 39,
                                                    "column": 34
                                                  },
                                                  "end": {
                                                    "line": 39,
                                                    "column": 45
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 1890,
                                                  "end": 1894,
                                                  "loc": {
                                                    "start": {
                                                      "line": 39,
                                                      "column": 34
                                                    },
                                                    "end": {
                                                      "line": 39,
                                                      "column": 38
                                                    }
                                                  },
                                                  "name": "view"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 1895,
                                                  "end": 1901,
                                                  "loc": {
                                                    "start": {
                                                      "line": 39,
                                                      "column": 39
                                                    },
                                                    "end": {
                                                      "line": 39,
                                                      "column": 45
                                                    }
                                                  },
                                                  "name": "camera"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 1902,
                                                "end": 1906,
                                                "loc": {
                                                  "start": {
                                                    "line": 39,
                                                    "column": 46
                                                  },
                                                  "end": {
                                                    "line": 39,
                                                    "column": 50
                                                  }
                                                },
                                                "name": "size"
                                              },
                                              "computed": false
                                            }
                                          ]
                                        }
                                      },
                                      {
                                        "type": "IfStatement",
                                        "start": 1925,
                                        "end": 1986,
                                        "loc": {
                                          "start": {
                                            "line": 40,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 41,
                                            "column": 27
                                          }
                                        },
                                        "test": {
                                          "type": "UnaryExpression",
                                          "start": 1929,
                                          "end": 1957,
                                          "loc": {
                                            "start": {
                                              "line": 40,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 40,
                                              "column": 48
                                            }
                                          },
                                          "operator": "!",
                                          "prefix": true,
                                          "argument": {
                                            "type": "MemberExpression",
                                            "start": 1930,
                                            "end": 1957,
                                            "loc": {
                                              "start": {
                                                "line": 40,
                                                "column": 21
                                              },
                                              "end": {
                                                "line": 40,
                                                "column": 48
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 1930,
                                              "end": 1947,
                                              "loc": {
                                                "start": {
                                                  "line": 40,
                                                  "column": 21
                                                },
                                                "end": {
                                                  "line": 40,
                                                  "column": 38
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 1930,
                                                "end": 1940,
                                                "loc": {
                                                  "start": {
                                                    "line": 40,
                                                    "column": 21
                                                  },
                                                  "end": {
                                                    "line": 40,
                                                    "column": 31
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 1930,
                                                  "end": 1934,
                                                  "loc": {
                                                    "start": {
                                                      "line": 40,
                                                      "column": 21
                                                    },
                                                    "end": {
                                                      "line": 40,
                                                      "column": 25
                                                    }
                                                  },
                                                  "name": "view"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 1935,
                                                  "end": 1940,
                                                  "loc": {
                                                    "start": {
                                                      "line": 40,
                                                      "column": 26
                                                    },
                                                    "end": {
                                                      "line": 40,
                                                      "column": 31
                                                    }
                                                  },
                                                  "name": "input"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 1941,
                                                "end": 1947,
                                                "loc": {
                                                  "start": {
                                                    "line": 40,
                                                    "column": 32
                                                  },
                                                  "end": {
                                                    "line": 40,
                                                    "column": 38
                                                  }
                                                },
                                                "name": "recent"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 1948,
                                              "end": 1957,
                                              "loc": {
                                                "start": {
                                                  "line": 40,
                                                  "column": 39
                                                },
                                                "end": {
                                                  "line": 40,
                                                  "column": 48
                                                }
                                              },
                                              "name": "mousemove"
                                            },
                                            "computed": false
                                          }
                                        },
                                        "consequent": {
                                          "type": "ReturnStatement",
                                          "start": 1979,
                                          "end": 1986,
                                          "loc": {
                                            "start": {
                                              "line": 41,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 41,
                                              "column": 27
                                            }
                                          },
                                          "argument": null,
                                          "leadingComments": null,
                                          "trailingComments": null
                                        },
                                        "alternate": null,
                                        "trailingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": "no one moved the mouse",
                                            "start": 1987,
                                            "end": 2011,
                                            "loc": {
                                              "start": {
                                                "line": 41,
                                                "column": 28
                                              },
                                              "end": {
                                                "line": 41,
                                                "column": 52
                                              }
                                            },
                                            "range": [
                                              1987,
                                              2011
                                            ]
                                          },
                                          {
                                            "type": "CommentLine",
                                            "value": "mouse coordinates in pixels",
                                            "start": 2028,
                                            "end": 2057,
                                            "loc": {
                                              "start": {
                                                "line": 42,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 42,
                                                "column": 45
                                              }
                                            },
                                            "range": [
                                              2028,
                                              2057
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "VariableDeclaration",
                                        "start": 2074,
                                        "end": 2179,
                                        "loc": {
                                          "start": {
                                            "line": 43,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 43,
                                            "column": 121
                                          }
                                        },
                                        "declarations": [
                                          {
                                            "type": "VariableDeclarator",
                                            "start": 2078,
                                            "end": 2178,
                                            "loc": {
                                              "start": {
                                                "line": 43,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 43,
                                                "column": 120
                                              }
                                            },
                                            "id": {
                                              "type": "Identifier",
                                              "start": 2078,
                                              "end": 2084,
                                              "loc": {
                                                "start": {
                                                  "line": 43,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 43,
                                                  "column": 26
                                                }
                                              },
                                              "name": "point2",
                                              "leadingComments": null
                                            },
                                            "init": {
                                              "type": "NewExpression",
                                              "start": 2087,
                                              "end": 2178,
                                              "loc": {
                                                "start": {
                                                  "line": 43,
                                                  "column": 29
                                                },
                                                "end": {
                                                  "line": 43,
                                                  "column": 120
                                                }
                                              },
                                              "callee": {
                                                "type": "MemberExpression",
                                                "start": 2091,
                                                "end": 2104,
                                                "loc": {
                                                  "start": {
                                                    "line": 43,
                                                    "column": 33
                                                  },
                                                  "end": {
                                                    "line": 43,
                                                    "column": 46
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 2091,
                                                  "end": 2096,
                                                  "loc": {
                                                    "start": {
                                                      "line": 43,
                                                      "column": 33
                                                    },
                                                    "end": {
                                                      "line": 43,
                                                      "column": 38
                                                    }
                                                  },
                                                  "name": "THREE"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 2097,
                                                  "end": 2104,
                                                  "loc": {
                                                    "start": {
                                                      "line": 43,
                                                      "column": 39
                                                    },
                                                    "end": {
                                                      "line": 43,
                                                      "column": 46
                                                    }
                                                  },
                                                  "name": "Vector2"
                                                },
                                                "computed": false
                                              },
                                              "arguments": [
                                                {
                                                  "type": "MemberExpression",
                                                  "start": 2105,
                                                  "end": 2140,
                                                  "loc": {
                                                    "start": {
                                                      "line": 43,
                                                      "column": 47
                                                    },
                                                    "end": {
                                                      "line": 43,
                                                      "column": 82
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 2105,
                                                    "end": 2132,
                                                    "loc": {
                                                      "start": {
                                                        "line": 43,
                                                        "column": 47
                                                      },
                                                      "end": {
                                                        "line": 43,
                                                        "column": 74
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "MemberExpression",
                                                      "start": 2105,
                                                      "end": 2122,
                                                      "loc": {
                                                        "start": {
                                                          "line": 43,
                                                          "column": 47
                                                        },
                                                        "end": {
                                                          "line": 43,
                                                          "column": 64
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "MemberExpression",
                                                        "start": 2105,
                                                        "end": 2115,
                                                        "loc": {
                                                          "start": {
                                                            "line": 43,
                                                            "column": 47
                                                          },
                                                          "end": {
                                                            "line": 43,
                                                            "column": 57
                                                          }
                                                        },
                                                        "object": {
                                                          "type": "Identifier",
                                                          "start": 2105,
                                                          "end": 2109,
                                                          "loc": {
                                                            "start": {
                                                              "line": 43,
                                                              "column": 47
                                                            },
                                                            "end": {
                                                              "line": 43,
                                                              "column": 51
                                                            }
                                                          },
                                                          "name": "view"
                                                        },
                                                        "property": {
                                                          "type": "Identifier",
                                                          "start": 2110,
                                                          "end": 2115,
                                                          "loc": {
                                                            "start": {
                                                              "line": 43,
                                                              "column": 52
                                                            },
                                                            "end": {
                                                              "line": 43,
                                                              "column": 57
                                                            }
                                                          },
                                                          "name": "input"
                                                        },
                                                        "computed": false
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 2116,
                                                        "end": 2122,
                                                        "loc": {
                                                          "start": {
                                                            "line": 43,
                                                            "column": 58
                                                          },
                                                          "end": {
                                                            "line": 43,
                                                            "column": 64
                                                          }
                                                        },
                                                        "name": "recent"
                                                      },
                                                      "computed": false
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 2123,
                                                      "end": 2132,
                                                      "loc": {
                                                        "start": {
                                                          "line": 43,
                                                          "column": 65
                                                        },
                                                        "end": {
                                                          "line": 43,
                                                          "column": 74
                                                        }
                                                      },
                                                      "name": "mousemove"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 2133,
                                                    "end": 2140,
                                                    "loc": {
                                                      "start": {
                                                        "line": 43,
                                                        "column": 75
                                                      },
                                                      "end": {
                                                        "line": 43,
                                                        "column": 82
                                                      }
                                                    },
                                                    "name": "offsetX"
                                                  },
                                                  "computed": false
                                                },
                                                {
                                                  "type": "MemberExpression",
                                                  "start": 2142,
                                                  "end": 2177,
                                                  "loc": {
                                                    "start": {
                                                      "line": 43,
                                                      "column": 84
                                                    },
                                                    "end": {
                                                      "line": 43,
                                                      "column": 119
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 2142,
                                                    "end": 2169,
                                                    "loc": {
                                                      "start": {
                                                        "line": 43,
                                                        "column": 84
                                                      },
                                                      "end": {
                                                        "line": 43,
                                                        "column": 111
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "MemberExpression",
                                                      "start": 2142,
                                                      "end": 2159,
                                                      "loc": {
                                                        "start": {
                                                          "line": 43,
                                                          "column": 84
                                                        },
                                                        "end": {
                                                          "line": 43,
                                                          "column": 101
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "MemberExpression",
                                                        "start": 2142,
                                                        "end": 2152,
                                                        "loc": {
                                                          "start": {
                                                            "line": 43,
                                                            "column": 84
                                                          },
                                                          "end": {
                                                            "line": 43,
                                                            "column": 94
                                                          }
                                                        },
                                                        "object": {
                                                          "type": "Identifier",
                                                          "start": 2142,
                                                          "end": 2146,
                                                          "loc": {
                                                            "start": {
                                                              "line": 43,
                                                              "column": 84
                                                            },
                                                            "end": {
                                                              "line": 43,
                                                              "column": 88
                                                            }
                                                          },
                                                          "name": "view"
                                                        },
                                                        "property": {
                                                          "type": "Identifier",
                                                          "start": 2147,
                                                          "end": 2152,
                                                          "loc": {
                                                            "start": {
                                                              "line": 43,
                                                              "column": 89
                                                            },
                                                            "end": {
                                                              "line": 43,
                                                              "column": 94
                                                            }
                                                          },
                                                          "name": "input"
                                                        },
                                                        "computed": false
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 2153,
                                                        "end": 2159,
                                                        "loc": {
                                                          "start": {
                                                            "line": 43,
                                                            "column": 95
                                                          },
                                                          "end": {
                                                            "line": 43,
                                                            "column": 101
                                                          }
                                                        },
                                                        "name": "recent"
                                                      },
                                                      "computed": false
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 2160,
                                                      "end": 2169,
                                                      "loc": {
                                                        "start": {
                                                          "line": 43,
                                                          "column": 102
                                                        },
                                                        "end": {
                                                          "line": 43,
                                                          "column": 111
                                                        }
                                                      },
                                                      "name": "mousemove"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 2170,
                                                    "end": 2177,
                                                    "loc": {
                                                      "start": {
                                                        "line": 43,
                                                        "column": 112
                                                      },
                                                      "end": {
                                                        "line": 43,
                                                        "column": 119
                                                      }
                                                    },
                                                    "name": "offsetY"
                                                  },
                                                  "computed": false
                                                }
                                              ]
                                            },
                                            "leadingComments": null
                                          }
                                        ],
                                        "kind": "let",
                                        "leadingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": "no one moved the mouse",
                                            "start": 1987,
                                            "end": 2011,
                                            "loc": {
                                              "start": {
                                                "line": 41,
                                                "column": 28
                                              },
                                              "end": {
                                                "line": 41,
                                                "column": 52
                                              }
                                            },
                                            "range": [
                                              1987,
                                              2011
                                            ]
                                          },
                                          {
                                            "type": "CommentLine",
                                            "value": "mouse coordinates in pixels",
                                            "start": 2028,
                                            "end": 2057,
                                            "loc": {
                                              "start": {
                                                "line": 42,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 42,
                                                "column": 45
                                              }
                                            },
                                            "range": [
                                              2028,
                                              2057
                                            ]
                                          }
                                        ],
                                        "trailingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": "3D line of corresponding points (in world coords)",
                                            "start": 2196,
                                            "end": 2247,
                                            "loc": {
                                              "start": {
                                                "line": 44,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 44,
                                                "column": 67
                                              }
                                            },
                                            "range": [
                                              2196,
                                              2247
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "VariableDeclaration",
                                        "start": 2264,
                                        "end": 2302,
                                        "loc": {
                                          "start": {
                                            "line": 45,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 45,
                                            "column": 54
                                          }
                                        },
                                        "declarations": [
                                          {
                                            "type": "VariableDeclarator",
                                            "start": 2268,
                                            "end": 2301,
                                            "loc": {
                                              "start": {
                                                "line": 45,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 45,
                                                "column": 53
                                              }
                                            },
                                            "id": {
                                              "type": "Identifier",
                                              "start": 2268,
                                              "end": 2273,
                                              "loc": {
                                                "start": {
                                                  "line": 45,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 45,
                                                  "column": 25
                                                }
                                              },
                                              "name": "line3",
                                              "leadingComments": null
                                            },
                                            "init": {
                                              "type": "CallExpression",
                                              "start": 2276,
                                              "end": 2301,
                                              "loc": {
                                                "start": {
                                                  "line": 45,
                                                  "column": 28
                                                },
                                                "end": {
                                                  "line": 45,
                                                  "column": 53
                                                }
                                              },
                                              "callee": {
                                                "type": "MemberExpression",
                                                "start": 2276,
                                                "end": 2293,
                                                "loc": {
                                                  "start": {
                                                    "line": 45,
                                                    "column": 28
                                                  },
                                                  "end": {
                                                    "line": 45,
                                                    "column": 45
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 2276,
                                                  "end": 2280,
                                                  "loc": {
                                                    "start": {
                                                      "line": 45,
                                                      "column": 28
                                                    },
                                                    "end": {
                                                      "line": 45,
                                                      "column": 32
                                                    }
                                                  },
                                                  "name": "view"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 2281,
                                                  "end": 2293,
                                                  "loc": {
                                                    "start": {
                                                      "line": 45,
                                                      "column": 33
                                                    },
                                                    "end": {
                                                      "line": 45,
                                                      "column": 45
                                                    }
                                                  },
                                                  "name": "getViewLine3"
                                                },
                                                "computed": false
                                              },
                                              "arguments": [
                                                {
                                                  "type": "Identifier",
                                                  "start": 2294,
                                                  "end": 2300,
                                                  "loc": {
                                                    "start": {
                                                      "line": 45,
                                                      "column": 46
                                                    },
                                                    "end": {
                                                      "line": 45,
                                                      "column": 52
                                                    }
                                                  },
                                                  "name": "point2"
                                                }
                                              ]
                                            },
                                            "leadingComments": null
                                          }
                                        ],
                                        "kind": "let",
                                        "leadingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": "3D line of corresponding points (in world coords)",
                                            "start": 2196,
                                            "end": 2247,
                                            "loc": {
                                              "start": {
                                                "line": 44,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 44,
                                                "column": 67
                                              }
                                            },
                                            "range": [
                                              2196,
                                              2247
                                            ]
                                          }
                                        ],
                                        "trailingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": "transform line from world to sketch coords",
                                            "start": 2319,
                                            "end": 2363,
                                            "loc": {
                                              "start": {
                                                "line": 46,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 46,
                                                "column": 60
                                              }
                                            },
                                            "range": [
                                              2319,
                                              2363
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "VariableDeclaration",
                                        "start": 2380,
                                        "end": 2450,
                                        "loc": {
                                          "start": {
                                            "line": 47,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 47,
                                            "column": 86
                                          }
                                        },
                                        "declarations": [
                                          {
                                            "type": "VariableDeclarator",
                                            "start": 2384,
                                            "end": 2449,
                                            "loc": {
                                              "start": {
                                                "line": 47,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 47,
                                                "column": 85
                                              }
                                            },
                                            "id": {
                                              "type": "Identifier",
                                              "start": 2384,
                                              "end": 2396,
                                              "loc": {
                                                "start": {
                                                  "line": 47,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 47,
                                                  "column": 32
                                                }
                                              },
                                              "name": "worldToLocal",
                                              "leadingComments": null
                                            },
                                            "init": {
                                              "type": "CallExpression",
                                              "start": 2399,
                                              "end": 2449,
                                              "loc": {
                                                "start": {
                                                  "line": 47,
                                                  "column": 35
                                                },
                                                "end": {
                                                  "line": 47,
                                                  "column": 85
                                                }
                                              },
                                              "callee": {
                                                "type": "MemberExpression",
                                                "start": 2399,
                                                "end": 2429,
                                                "loc": {
                                                  "start": {
                                                    "line": 47,
                                                    "column": 35
                                                  },
                                                  "end": {
                                                    "line": 47,
                                                    "column": 65
                                                  }
                                                },
                                                "object": {
                                                  "type": "NewExpression",
                                                  "start": 2399,
                                                  "end": 2418,
                                                  "loc": {
                                                    "start": {
                                                      "line": 47,
                                                      "column": 35
                                                    },
                                                    "end": {
                                                      "line": 47,
                                                      "column": 54
                                                    }
                                                  },
                                                  "callee": {
                                                    "type": "MemberExpression",
                                                    "start": 2403,
                                                    "end": 2416,
                                                    "loc": {
                                                      "start": {
                                                        "line": 47,
                                                        "column": 39
                                                      },
                                                      "end": {
                                                        "line": 47,
                                                        "column": 52
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 2403,
                                                      "end": 2408,
                                                      "loc": {
                                                        "start": {
                                                          "line": 47,
                                                          "column": 39
                                                        },
                                                        "end": {
                                                          "line": 47,
                                                          "column": 44
                                                        }
                                                      },
                                                      "name": "THREE"
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 2409,
                                                      "end": 2416,
                                                      "loc": {
                                                        "start": {
                                                          "line": 47,
                                                          "column": 45
                                                        },
                                                        "end": {
                                                          "line": 47,
                                                          "column": 52
                                                        }
                                                      },
                                                      "name": "Matrix4"
                                                    },
                                                    "computed": false
                                                  },
                                                  "arguments": []
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 2419,
                                                  "end": 2429,
                                                  "loc": {
                                                    "start": {
                                                      "line": 47,
                                                      "column": 55
                                                    },
                                                    "end": {
                                                      "line": 47,
                                                      "column": 65
                                                    }
                                                  },
                                                  "name": "getInverse"
                                                },
                                                "computed": false
                                              },
                                              "arguments": [
                                                {
                                                  "type": "MemberExpression",
                                                  "start": 2430,
                                                  "end": 2448,
                                                  "loc": {
                                                    "start": {
                                                      "line": 47,
                                                      "column": 66
                                                    },
                                                    "end": {
                                                      "line": 47,
                                                      "column": 84
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 2430,
                                                    "end": 2436,
                                                    "loc": {
                                                      "start": {
                                                        "line": 47,
                                                        "column": 66
                                                      },
                                                      "end": {
                                                        "line": 47,
                                                        "column": 72
                                                      }
                                                    },
                                                    "name": "sketch"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 2437,
                                                    "end": 2448,
                                                    "loc": {
                                                      "start": {
                                                        "line": 47,
                                                        "column": 73
                                                      },
                                                      "end": {
                                                        "line": 47,
                                                        "column": 84
                                                      }
                                                    },
                                                    "name": "matrixWorld"
                                                  },
                                                  "computed": false
                                                }
                                              ]
                                            },
                                            "leadingComments": null
                                          }
                                        ],
                                        "kind": "let",
                                        "leadingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": "transform line from world to sketch coords",
                                            "start": 2319,
                                            "end": 2363,
                                            "loc": {
                                              "start": {
                                                "line": 46,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 46,
                                                "column": 60
                                              }
                                            },
                                            "range": [
                                              2319,
                                              2363
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 2467,
                                        "end": 2500,
                                        "loc": {
                                          "start": {
                                            "line": 48,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 48,
                                            "column": 49
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 2467,
                                          "end": 2499,
                                          "loc": {
                                            "start": {
                                              "line": 48,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 48,
                                              "column": 48
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 2467,
                                            "end": 2485,
                                            "loc": {
                                              "start": {
                                                "line": 48,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 48,
                                                "column": 34
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 2467,
                                              "end": 2472,
                                              "loc": {
                                                "start": {
                                                  "line": 48,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 48,
                                                  "column": 21
                                                }
                                              },
                                              "name": "line3"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 2473,
                                              "end": 2485,
                                              "loc": {
                                                "start": {
                                                  "line": 48,
                                                  "column": 22
                                                },
                                                "end": {
                                                  "line": 48,
                                                  "column": 34
                                                }
                                              },
                                              "name": "applyMatrix4"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "Identifier",
                                              "start": 2486,
                                              "end": 2498,
                                              "loc": {
                                                "start": {
                                                  "line": 48,
                                                  "column": 35
                                                },
                                                "end": {
                                                  "line": 48,
                                                  "column": 47
                                                }
                                              },
                                              "name": "worldToLocal"
                                            }
                                          ]
                                        },
                                        "trailingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": "calculate intersection of line with z = 0 plane",
                                            "start": 2517,
                                            "end": 2566,
                                            "loc": {
                                              "start": {
                                                "line": 49,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 49,
                                                "column": 65
                                              }
                                            },
                                            "range": [
                                              2517,
                                              2566
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "VariableDeclaration",
                                        "start": 2583,
                                        "end": 2647,
                                        "loc": {
                                          "start": {
                                            "line": 50,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 50,
                                            "column": 80
                                          }
                                        },
                                        "declarations": [
                                          {
                                            "type": "VariableDeclarator",
                                            "start": 2587,
                                            "end": 2646,
                                            "loc": {
                                              "start": {
                                                "line": 50,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 50,
                                                "column": 79
                                              }
                                            },
                                            "id": {
                                              "type": "Identifier",
                                              "start": 2587,
                                              "end": 2592,
                                              "loc": {
                                                "start": {
                                                  "line": 50,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 50,
                                                  "column": 25
                                                }
                                              },
                                              "name": "param",
                                              "leadingComments": null
                                            },
                                            "init": {
                                              "type": "BinaryExpression",
                                              "start": 2595,
                                              "end": 2646,
                                              "loc": {
                                                "start": {
                                                  "line": 50,
                                                  "column": 28
                                                },
                                                "end": {
                                                  "line": 50,
                                                  "column": 79
                                                }
                                              },
                                              "left": {
                                                "type": "BinaryExpression",
                                                "start": 2596,
                                                "end": 2613,
                                                "loc": {
                                                  "start": {
                                                    "line": 50,
                                                    "column": 29
                                                  },
                                                  "end": {
                                                    "line": 50,
                                                    "column": 46
                                                  }
                                                },
                                                "left": {
                                                  "type": "Literal",
                                                  "start": 2596,
                                                  "end": 2597,
                                                  "loc": {
                                                    "start": {
                                                      "line": 50,
                                                      "column": 29
                                                    },
                                                    "end": {
                                                      "line": 50,
                                                      "column": 30
                                                    }
                                                  },
                                                  "value": 0,
                                                  "rawValue": 0,
                                                  "raw": "0"
                                                },
                                                "operator": "-",
                                                "right": {
                                                  "type": "MemberExpression",
                                                  "start": 2600,
                                                  "end": 2613,
                                                  "loc": {
                                                    "start": {
                                                      "line": 50,
                                                      "column": 33
                                                    },
                                                    "end": {
                                                      "line": 50,
                                                      "column": 46
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 2600,
                                                    "end": 2611,
                                                    "loc": {
                                                      "start": {
                                                        "line": 50,
                                                        "column": 33
                                                      },
                                                      "end": {
                                                        "line": 50,
                                                        "column": 44
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 2600,
                                                      "end": 2605,
                                                      "loc": {
                                                        "start": {
                                                          "line": 50,
                                                          "column": 33
                                                        },
                                                        "end": {
                                                          "line": 50,
                                                          "column": 38
                                                        }
                                                      },
                                                      "name": "line3"
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 2606,
                                                      "end": 2611,
                                                      "loc": {
                                                        "start": {
                                                          "line": 50,
                                                          "column": 39
                                                        },
                                                        "end": {
                                                          "line": 50,
                                                          "column": 44
                                                        }
                                                      },
                                                      "name": "start"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 2612,
                                                    "end": 2613,
                                                    "loc": {
                                                      "start": {
                                                        "line": 50,
                                                        "column": 45
                                                      },
                                                      "end": {
                                                        "line": 50,
                                                        "column": 46
                                                      }
                                                    },
                                                    "name": "z"
                                                  },
                                                  "computed": false
                                                },
                                                "parenthesizedExpression": true
                                              },
                                              "operator": "/",
                                              "right": {
                                                "type": "BinaryExpression",
                                                "start": 2618,
                                                "end": 2645,
                                                "loc": {
                                                  "start": {
                                                    "line": 50,
                                                    "column": 51
                                                  },
                                                  "end": {
                                                    "line": 50,
                                                    "column": 78
                                                  }
                                                },
                                                "left": {
                                                  "type": "MemberExpression",
                                                  "start": 2618,
                                                  "end": 2629,
                                                  "loc": {
                                                    "start": {
                                                      "line": 50,
                                                      "column": 51
                                                    },
                                                    "end": {
                                                      "line": 50,
                                                      "column": 62
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 2618,
                                                    "end": 2627,
                                                    "loc": {
                                                      "start": {
                                                        "line": 50,
                                                        "column": 51
                                                      },
                                                      "end": {
                                                        "line": 50,
                                                        "column": 60
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 2618,
                                                      "end": 2623,
                                                      "loc": {
                                                        "start": {
                                                          "line": 50,
                                                          "column": 51
                                                        },
                                                        "end": {
                                                          "line": 50,
                                                          "column": 56
                                                        }
                                                      },
                                                      "name": "line3"
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 2624,
                                                      "end": 2627,
                                                      "loc": {
                                                        "start": {
                                                          "line": 50,
                                                          "column": 57
                                                        },
                                                        "end": {
                                                          "line": 50,
                                                          "column": 60
                                                        }
                                                      },
                                                      "name": "end"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 2628,
                                                    "end": 2629,
                                                    "loc": {
                                                      "start": {
                                                        "line": 50,
                                                        "column": 61
                                                      },
                                                      "end": {
                                                        "line": 50,
                                                        "column": 62
                                                      }
                                                    },
                                                    "name": "z"
                                                  },
                                                  "computed": false
                                                },
                                                "operator": "-",
                                                "right": {
                                                  "type": "MemberExpression",
                                                  "start": 2632,
                                                  "end": 2645,
                                                  "loc": {
                                                    "start": {
                                                      "line": 50,
                                                      "column": 65
                                                    },
                                                    "end": {
                                                      "line": 50,
                                                      "column": 78
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 2632,
                                                    "end": 2643,
                                                    "loc": {
                                                      "start": {
                                                        "line": 50,
                                                        "column": 65
                                                      },
                                                      "end": {
                                                        "line": 50,
                                                        "column": 76
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 2632,
                                                      "end": 2637,
                                                      "loc": {
                                                        "start": {
                                                          "line": 50,
                                                          "column": 65
                                                        },
                                                        "end": {
                                                          "line": 50,
                                                          "column": 70
                                                        }
                                                      },
                                                      "name": "line3"
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 2638,
                                                      "end": 2643,
                                                      "loc": {
                                                        "start": {
                                                          "line": 50,
                                                          "column": 71
                                                        },
                                                        "end": {
                                                          "line": 50,
                                                          "column": 76
                                                        }
                                                      },
                                                      "name": "start"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 2644,
                                                    "end": 2645,
                                                    "loc": {
                                                      "start": {
                                                        "line": 50,
                                                        "column": 77
                                                      },
                                                      "end": {
                                                        "line": 50,
                                                        "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": 2517,
                                            "end": 2566,
                                            "loc": {
                                              "start": {
                                                "line": 49,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 49,
                                                "column": 65
                                              }
                                            },
                                            "range": [
                                              2517,
                                              2566
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "VariableDeclaration",
                                        "start": 2664,
                                        "end": 2698,
                                        "loc": {
                                          "start": {
                                            "line": 51,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 51,
                                            "column": 50
                                          }
                                        },
                                        "declarations": [
                                          {
                                            "type": "VariableDeclarator",
                                            "start": 2668,
                                            "end": 2697,
                                            "loc": {
                                              "start": {
                                                "line": 51,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 51,
                                                "column": 49
                                              }
                                            },
                                            "id": {
                                              "type": "Identifier",
                                              "start": 2668,
                                              "end": 2679,
                                              "loc": {
                                                "start": {
                                                  "line": 51,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 51,
                                                  "column": 31
                                                }
                                              },
                                              "name": "sketchPoint"
                                            },
                                            "init": {
                                              "type": "CallExpression",
                                              "start": 2682,
                                              "end": 2697,
                                              "loc": {
                                                "start": {
                                                  "line": 51,
                                                  "column": 34
                                                },
                                                "end": {
                                                  "line": 51,
                                                  "column": 49
                                                }
                                              },
                                              "callee": {
                                                "type": "MemberExpression",
                                                "start": 2682,
                                                "end": 2690,
                                                "loc": {
                                                  "start": {
                                                    "line": 51,
                                                    "column": 34
                                                  },
                                                  "end": {
                                                    "line": 51,
                                                    "column": 42
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 2682,
                                                  "end": 2687,
                                                  "loc": {
                                                    "start": {
                                                      "line": 51,
                                                      "column": 34
                                                    },
                                                    "end": {
                                                      "line": 51,
                                                      "column": 39
                                                    }
                                                  },
                                                  "name": "line3"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 2688,
                                                  "end": 2690,
                                                  "loc": {
                                                    "start": {
                                                      "line": 51,
                                                      "column": 40
                                                    },
                                                    "end": {
                                                      "line": 51,
                                                      "column": 42
                                                    }
                                                  },
                                                  "name": "at"
                                                },
                                                "computed": false
                                              },
                                              "arguments": [
                                                {
                                                  "type": "Identifier",
                                                  "start": 2691,
                                                  "end": 2696,
                                                  "loc": {
                                                    "start": {
                                                      "line": 51,
                                                      "column": 43
                                                    },
                                                    "end": {
                                                      "line": 51,
                                                      "column": 48
                                                    }
                                                  },
                                                  "name": "param"
                                                }
                                              ]
                                            }
                                          }
                                        ],
                                        "kind": "let"
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 2715,
                                        "end": 2733,
                                        "loc": {
                                          "start": {
                                            "line": 52,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 52,
                                            "column": 34
                                          }
                                        },
                                        "expression": {
                                          "type": "AssignmentExpression",
                                          "start": 2715,
                                          "end": 2732,
                                          "loc": {
                                            "start": {
                                              "line": 52,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 52,
                                              "column": 33
                                            }
                                          },
                                          "operator": "=",
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 2715,
                                            "end": 2728,
                                            "loc": {
                                              "start": {
                                                "line": 52,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 52,
                                                "column": 29
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 2715,
                                              "end": 2726,
                                              "loc": {
                                                "start": {
                                                  "line": 52,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 52,
                                                  "column": 27
                                                }
                                              },
                                              "name": "sketchPoint"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 2727,
                                              "end": 2728,
                                              "loc": {
                                                "start": {
                                                  "line": 52,
                                                  "column": 28
                                                },
                                                "end": {
                                                  "line": 52,
                                                  "column": 29
                                                }
                                              },
                                              "name": "z"
                                            },
                                            "computed": false
                                          },
                                          "right": {
                                            "type": "Literal",
                                            "start": 2731,
                                            "end": 2732,
                                            "loc": {
                                              "start": {
                                                "line": 52,
                                                "column": 32
                                              },
                                              "end": {
                                                "line": 52,
                                                "column": 33
                                              }
                                            },
                                            "value": 0,
                                            "rawValue": 0,
                                            "raw": "0"
                                          }
                                        },
                                        "trailingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": "ensure it is exactly zero",
                                            "start": 2735,
                                            "end": 2762,
                                            "loc": {
                                              "start": {
                                                "line": 52,
                                                "column": 36
                                              },
                                              "end": {
                                                "line": 52,
                                                "column": 63
                                              }
                                            },
                                            "range": [
                                              2735,
                                              2762
                                            ]
                                          },
                                          {
                                            "type": "CommentLine",
                                            "value": "if changed, call mouse move handler",
                                            "start": 2779,
                                            "end": 2816,
                                            "loc": {
                                              "start": {
                                                "line": 53,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 53,
                                                "column": 53
                                              }
                                            },
                                            "range": [
                                              2779,
                                              2816
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "IfStatement",
                                        "start": 2833,
                                        "end": 3090,
                                        "loc": {
                                          "start": {
                                            "line": 54,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 58,
                                            "column": 17
                                          }
                                        },
                                        "test": {
                                          "type": "UnaryExpression",
                                          "start": 2837,
                                          "end": 2893,
                                          "loc": {
                                            "start": {
                                              "line": 54,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 54,
                                              "column": 76
                                            }
                                          },
                                          "operator": "!",
                                          "prefix": true,
                                          "argument": {
                                            "type": "CallExpression",
                                            "start": 2838,
                                            "end": 2893,
                                            "loc": {
                                              "start": {
                                                "line": 54,
                                                "column": 21
                                              },
                                              "end": {
                                                "line": 54,
                                                "column": 76
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 2838,
                                              "end": 2856,
                                              "loc": {
                                                "start": {
                                                  "line": 54,
                                                  "column": 21
                                                },
                                                "end": {
                                                  "line": 54,
                                                  "column": 39
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 2838,
                                                "end": 2849,
                                                "loc": {
                                                  "start": {
                                                    "line": 54,
                                                    "column": 21
                                                  },
                                                  "end": {
                                                    "line": 54,
                                                    "column": 32
                                                  }
                                                },
                                                "name": "sketchPoint",
                                                "leadingComments": null
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 2850,
                                                "end": 2856,
                                                "loc": {
                                                  "start": {
                                                    "line": 54,
                                                    "column": 33
                                                  },
                                                  "end": {
                                                    "line": 54,
                                                    "column": 39
                                                  }
                                                },
                                                "name": "equals"
                                              },
                                              "computed": false,
                                              "leadingComments": null
                                            },
                                            "arguments": [
                                              {
                                                "type": "MemberExpression",
                                                "start": 2857,
                                                "end": 2892,
                                                "loc": {
                                                  "start": {
                                                    "line": 54,
                                                    "column": 40
                                                  },
                                                  "end": {
                                                    "line": 54,
                                                    "column": 75
                                                  }
                                                },
                                                "object": {
                                                  "type": "MemberExpression",
                                                  "start": 2857,
                                                  "end": 2875,
                                                  "loc": {
                                                    "start": {
                                                      "line": 54,
                                                      "column": 40
                                                    },
                                                    "end": {
                                                      "line": 54,
                                                      "column": 58
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 2857,
                                                    "end": 2865,
                                                    "loc": {
                                                      "start": {
                                                        "line": 54,
                                                        "column": 40
                                                      },
                                                      "end": {
                                                        "line": 54,
                                                        "column": 48
                                                      }
                                                    },
                                                    "name": "sketcher"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 2866,
                                                    "end": 2875,
                                                    "loc": {
                                                      "start": {
                                                        "line": 54,
                                                        "column": 49
                                                      },
                                                      "end": {
                                                        "line": 54,
                                                        "column": 58
                                                      }
                                                    },
                                                    "name": "modelData"
                                                  },
                                                  "computed": false
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 2876,
                                                  "end": 2892,
                                                  "loc": {
                                                    "start": {
                                                      "line": 54,
                                                      "column": 59
                                                    },
                                                    "end": {
                                                      "line": 54,
                                                      "column": 75
                                                    }
                                                  },
                                                  "name": "interactionPoint"
                                                },
                                                "computed": false
                                              }
                                            ],
                                            "leadingComments": null
                                          },
                                          "leadingComments": null
                                        },
                                        "consequent": {
                                          "type": "BlockStatement",
                                          "start": 2895,
                                          "end": 3090,
                                          "loc": {
                                            "start": {
                                              "line": 54,
                                              "column": 78
                                            },
                                            "end": {
                                              "line": 58,
                                              "column": 17
                                            }
                                          },
                                          "body": [
                                            {
                                              "type": "ExpressionStatement",
                                              "start": 2970,
                                              "end": 3024,
                                              "loc": {
                                                "start": {
                                                  "line": 56,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 56,
                                                  "column": 74
                                                }
                                              },
                                              "expression": {
                                                "type": "CallExpression",
                                                "start": 2970,
                                                "end": 3023,
                                                "loc": {
                                                  "start": {
                                                    "line": 56,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 56,
                                                    "column": 73
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 2970,
                                                  "end": 3010,
                                                  "loc": {
                                                    "start": {
                                                      "line": 56,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 56,
                                                      "column": 60
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 2970,
                                                    "end": 3005,
                                                    "loc": {
                                                      "start": {
                                                        "line": 56,
                                                        "column": 20
                                                      },
                                                      "end": {
                                                        "line": 56,
                                                        "column": 55
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "MemberExpression",
                                                      "start": 2970,
                                                      "end": 2988,
                                                      "loc": {
                                                        "start": {
                                                          "line": 56,
                                                          "column": 20
                                                        },
                                                        "end": {
                                                          "line": 56,
                                                          "column": 38
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "Identifier",
                                                        "start": 2970,
                                                        "end": 2978,
                                                        "loc": {
                                                          "start": {
                                                            "line": 56,
                                                            "column": 20
                                                          },
                                                          "end": {
                                                            "line": 56,
                                                            "column": 28
                                                          }
                                                        },
                                                        "name": "sketcher",
                                                        "leadingComments": null
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 2979,
                                                        "end": 2988,
                                                        "loc": {
                                                          "start": {
                                                            "line": 56,
                                                            "column": 29
                                                          },
                                                          "end": {
                                                            "line": 56,
                                                            "column": 38
                                                          }
                                                        },
                                                        "name": "modelData"
                                                      },
                                                      "computed": false,
                                                      "leadingComments": null
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 2989,
                                                      "end": 3005,
                                                      "loc": {
                                                        "start": {
                                                          "line": 56,
                                                          "column": 39
                                                        },
                                                        "end": {
                                                          "line": 56,
                                                          "column": 55
                                                        }
                                                      },
                                                      "name": "interactionPoint"
                                                    },
                                                    "computed": false,
                                                    "leadingComments": null
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 3006,
                                                    "end": 3010,
                                                    "loc": {
                                                      "start": {
                                                        "line": 56,
                                                        "column": 56
                                                      },
                                                      "end": {
                                                        "line": 56,
                                                        "column": 60
                                                      }
                                                    },
                                                    "name": "copy"
                                                  },
                                                  "computed": false,
                                                  "leadingComments": null
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 3011,
                                                    "end": 3022,
                                                    "loc": {
                                                      "start": {
                                                        "line": 56,
                                                        "column": 61
                                                      },
                                                      "end": {
                                                        "line": 56,
                                                        "column": 72
                                                      }
                                                    },
                                                    "name": "sketchPoint"
                                                  }
                                                ],
                                                "leadingComments": null
                                              },
                                              "leadingComments": [
                                                {
                                                  "type": "CommentLine",
                                                  "value": "TODO: await mouseMove handler?",
                                                  "start": 2917,
                                                  "end": 2949,
                                                  "loc": {
                                                    "start": {
                                                      "line": 55,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 55,
                                                      "column": 52
                                                    }
                                                  },
                                                  "range": [
                                                    2917,
                                                    2949
                                                  ]
                                                }
                                              ]
                                            },
                                            {
                                              "type": "ExpressionStatement",
                                              "start": 3045,
                                              "end": 3072,
                                              "loc": {
                                                "start": {
                                                  "line": 57,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 57,
                                                  "column": 47
                                                }
                                              },
                                              "expression": {
                                                "type": "CallExpression",
                                                "start": 3045,
                                                "end": 3071,
                                                "loc": {
                                                  "start": {
                                                    "line": 57,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 57,
                                                    "column": 46
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 3045,
                                                  "end": 3069,
                                                  "loc": {
                                                    "start": {
                                                      "line": 57,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 57,
                                                      "column": 44
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 3045,
                                                    "end": 3053,
                                                    "loc": {
                                                      "start": {
                                                        "line": 57,
                                                        "column": 20
                                                      },
                                                      "end": {
                                                        "line": 57,
                                                        "column": 28
                                                      }
                                                    },
                                                    "name": "sketcher"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 3054,
                                                    "end": 3069,
                                                    "loc": {
                                                      "start": {
                                                        "line": 57,
                                                        "column": 29
                                                      },
                                                      "end": {
                                                        "line": 57,
                                                        "column": 44
                                                      }
                                                    },
                                                    "name": "setActionCursor"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": []
                                              }
                                            }
                                          ]
                                        },
                                        "alternate": null,
                                        "leadingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": "ensure it is exactly zero",
                                            "start": 2735,
                                            "end": 2762,
                                            "loc": {
                                              "start": {
                                                "line": 52,
                                                "column": 36
                                              },
                                              "end": {
                                                "line": 52,
                                                "column": 63
                                              }
                                            },
                                            "range": [
                                              2735,
                                              2762
                                            ]
                                          },
                                          {
                                            "type": "CommentLine",
                                            "value": "if changed, call mouse move handler",
                                            "start": 2779,
                                            "end": 2816,
                                            "loc": {
                                              "start": {
                                                "line": 53,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 53,
                                                "column": 53
                                              }
                                            },
                                            "range": [
                                              2779,
                                              2816
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 3107,
                                        "end": 3126,
                                        "loc": {
                                          "start": {
                                            "line": 59,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 59,
                                            "column": 35
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 3107,
                                          "end": 3125,
                                          "loc": {
                                            "start": {
                                              "line": 59,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 59,
                                              "column": 34
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 3107,
                                            "end": 3123,
                                            "loc": {
                                              "start": {
                                                "line": 59,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 59,
                                                "column": 32
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 3107,
                                              "end": 3115,
                                              "loc": {
                                                "start": {
                                                  "line": 59,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 59,
                                                  "column": 24
                                                }
                                              },
                                              "name": "sketcher"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 3116,
                                              "end": 3123,
                                              "loc": {
                                                "start": {
                                                  "line": 59,
                                                  "column": 25
                                                },
                                                "end": {
                                                  "line": 59,
                                                  "column": 32
                                                }
                                              },
                                              "name": "refresh"
                                            },
                                            "computed": false
                                          },
                                          "arguments": []
                                        }
                                      }
                                    ]
                                  }
                                }
                              }
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3163,
                      "end": 3270,
                      "loc": {
                        "start": {
                          "line": 63,
                          "column": 8
                        },
                        "end": {
                          "line": 63,
                          "column": 115
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3163,
                        "end": 3269,
                        "loc": {
                          "start": {
                            "line": 63,
                            "column": 8
                          },
                          "end": {
                            "line": 63,
                            "column": 114
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3163,
                          "end": 3174,
                          "loc": {
                            "start": {
                              "line": 63,
                              "column": 8
                            },
                            "end": {
                              "line": 63,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3163,
                            "end": 3167,
                            "loc": {
                              "start": {
                                "line": 63,
                                "column": 8
                              },
                              "end": {
                                "line": 63,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3168,
                            "end": 3174,
                            "loc": {
                              "start": {
                                "line": 63,
                                "column": 13
                              },
                              "end": {
                                "line": 63,
                                "column": 19
                              }
                            },
                            "name": "__grid"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 3177,
                          "end": 3269,
                          "loc": {
                            "start": {
                              "line": 63,
                              "column": 22
                            },
                            "end": {
                              "line": 63,
                              "column": 114
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 3181,
                            "end": 3199,
                            "loc": {
                              "start": {
                                "line": 63,
                                "column": 26
                              },
                              "end": {
                                "line": 63,
                                "column": 44
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 3181,
                              "end": 3186,
                              "loc": {
                                "start": {
                                  "line": 63,
                                  "column": 26
                                },
                                "end": {
                                  "line": 63,
                                  "column": 31
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3187,
                              "end": 3199,
                              "loc": {
                                "start": {
                                  "line": 63,
                                  "column": 32
                                },
                                "end": {
                                  "line": 63,
                                  "column": 44
                                }
                              },
                              "name": "LineSegments"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "NewExpression",
                              "start": 3200,
                              "end": 3220,
                              "loc": {
                                "start": {
                                  "line": 63,
                                  "column": 45
                                },
                                "end": {
                                  "line": 63,
                                  "column": 65
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 3204,
                                "end": 3218,
                                "loc": {
                                  "start": {
                                    "line": 63,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 63,
                                    "column": 63
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 3204,
                                  "end": 3209,
                                  "loc": {
                                    "start": {
                                      "line": 63,
                                      "column": 49
                                    },
                                    "end": {
                                      "line": 63,
                                      "column": 54
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3210,
                                  "end": 3218,
                                  "loc": {
                                    "start": {
                                      "line": 63,
                                      "column": 55
                                    },
                                    "end": {
                                      "line": 63,
                                      "column": 63
                                    }
                                  },
                                  "name": "Geometry"
                                },
                                "computed": false
                              },
                              "arguments": []
                            },
                            {
                              "type": "NewExpression",
                              "start": 3222,
                              "end": 3268,
                              "loc": {
                                "start": {
                                  "line": 63,
                                  "column": 67
                                },
                                "end": {
                                  "line": 63,
                                  "column": 113
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 3226,
                                "end": 3249,
                                "loc": {
                                  "start": {
                                    "line": 63,
                                    "column": 71
                                  },
                                  "end": {
                                    "line": 63,
                                    "column": 94
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 3226,
                                  "end": 3231,
                                  "loc": {
                                    "start": {
                                      "line": 63,
                                      "column": 71
                                    },
                                    "end": {
                                      "line": 63,
                                      "column": 76
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3232,
                                  "end": 3249,
                                  "loc": {
                                    "start": {
                                      "line": 63,
                                      "column": 77
                                    },
                                    "end": {
                                      "line": 63,
                                      "column": 94
                                    }
                                  },
                                  "name": "LineBasicMaterial"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ObjectExpression",
                                  "start": 3250,
                                  "end": 3267,
                                  "loc": {
                                    "start": {
                                      "line": 63,
                                      "column": 95
                                    },
                                    "end": {
                                      "line": 63,
                                      "column": 112
                                    }
                                  },
                                  "properties": [
                                    {
                                      "type": "Property",
                                      "start": 3251,
                                      "end": 3266,
                                      "loc": {
                                        "start": {
                                          "line": 63,
                                          "column": 96
                                        },
                                        "end": {
                                          "line": 63,
                                          "column": 111
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 3251,
                                        "end": 3256,
                                        "loc": {
                                          "start": {
                                            "line": 63,
                                            "column": 96
                                          },
                                          "end": {
                                            "line": 63,
                                            "column": 101
                                          }
                                        },
                                        "name": "color"
                                      },
                                      "value": {
                                        "type": "Literal",
                                        "start": 3258,
                                        "end": 3266,
                                        "loc": {
                                          "start": {
                                            "line": 63,
                                            "column": 103
                                          },
                                          "end": {
                                            "line": 63,
                                            "column": 111
                                          }
                                        },
                                        "value": 5263440,
                                        "rawValue": 5263440,
                                        "raw": "0x505050"
                                      },
                                      "kind": "init"
                                    }
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3279,
                      "end": 3386,
                      "loc": {
                        "start": {
                          "line": 64,
                          "column": 8
                        },
                        "end": {
                          "line": 64,
                          "column": 115
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3279,
                        "end": 3385,
                        "loc": {
                          "start": {
                            "line": 64,
                            "column": 8
                          },
                          "end": {
                            "line": 64,
                            "column": 114
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3279,
                          "end": 3290,
                          "loc": {
                            "start": {
                              "line": 64,
                              "column": 8
                            },
                            "end": {
                              "line": 64,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3279,
                            "end": 3283,
                            "loc": {
                              "start": {
                                "line": 64,
                                "column": 8
                              },
                              "end": {
                                "line": 64,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3284,
                            "end": 3290,
                            "loc": {
                              "start": {
                                "line": 64,
                                "column": 13
                              },
                              "end": {
                                "line": 64,
                                "column": 19
                              }
                            },
                            "name": "__axis"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 3293,
                          "end": 3385,
                          "loc": {
                            "start": {
                              "line": 64,
                              "column": 22
                            },
                            "end": {
                              "line": 64,
                              "column": 114
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 3297,
                            "end": 3315,
                            "loc": {
                              "start": {
                                "line": 64,
                                "column": 26
                              },
                              "end": {
                                "line": 64,
                                "column": 44
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 3297,
                              "end": 3302,
                              "loc": {
                                "start": {
                                  "line": 64,
                                  "column": 26
                                },
                                "end": {
                                  "line": 64,
                                  "column": 31
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3303,
                              "end": 3315,
                              "loc": {
                                "start": {
                                  "line": 64,
                                  "column": 32
                                },
                                "end": {
                                  "line": 64,
                                  "column": 44
                                }
                              },
                              "name": "LineSegments"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "NewExpression",
                              "start": 3316,
                              "end": 3336,
                              "loc": {
                                "start": {
                                  "line": 64,
                                  "column": 45
                                },
                                "end": {
                                  "line": 64,
                                  "column": 65
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 3320,
                                "end": 3334,
                                "loc": {
                                  "start": {
                                    "line": 64,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 64,
                                    "column": 63
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 3320,
                                  "end": 3325,
                                  "loc": {
                                    "start": {
                                      "line": 64,
                                      "column": 49
                                    },
                                    "end": {
                                      "line": 64,
                                      "column": 54
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3326,
                                  "end": 3334,
                                  "loc": {
                                    "start": {
                                      "line": 64,
                                      "column": 55
                                    },
                                    "end": {
                                      "line": 64,
                                      "column": 63
                                    }
                                  },
                                  "name": "Geometry"
                                },
                                "computed": false
                              },
                              "arguments": []
                            },
                            {
                              "type": "NewExpression",
                              "start": 3338,
                              "end": 3384,
                              "loc": {
                                "start": {
                                  "line": 64,
                                  "column": 67
                                },
                                "end": {
                                  "line": 64,
                                  "column": 113
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 3342,
                                "end": 3365,
                                "loc": {
                                  "start": {
                                    "line": 64,
                                    "column": 71
                                  },
                                  "end": {
                                    "line": 64,
                                    "column": 94
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 3342,
                                  "end": 3347,
                                  "loc": {
                                    "start": {
                                      "line": 64,
                                      "column": 71
                                    },
                                    "end": {
                                      "line": 64,
                                      "column": 76
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3348,
                                  "end": 3365,
                                  "loc": {
                                    "start": {
                                      "line": 64,
                                      "column": 77
                                    },
                                    "end": {
                                      "line": 64,
                                      "column": 94
                                    }
                                  },
                                  "name": "LineBasicMaterial"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ObjectExpression",
                                  "start": 3366,
                                  "end": 3383,
                                  "loc": {
                                    "start": {
                                      "line": 64,
                                      "column": 95
                                    },
                                    "end": {
                                      "line": 64,
                                      "column": 112
                                    }
                                  },
                                  "properties": [
                                    {
                                      "type": "Property",
                                      "start": 3367,
                                      "end": 3382,
                                      "loc": {
                                        "start": {
                                          "line": 64,
                                          "column": 96
                                        },
                                        "end": {
                                          "line": 64,
                                          "column": 111
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 3367,
                                        "end": 3372,
                                        "loc": {
                                          "start": {
                                            "line": 64,
                                            "column": 96
                                          },
                                          "end": {
                                            "line": 64,
                                            "column": 101
                                          }
                                        },
                                        "name": "color"
                                      },
                                      "value": {
                                        "type": "Literal",
                                        "start": 3374,
                                        "end": 3382,
                                        "loc": {
                                          "start": {
                                            "line": 64,
                                            "column": 103
                                          },
                                          "end": {
                                            "line": 64,
                                            "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": 3395,
                          "end": 3469,
                          "loc": {
                            "start": {
                              "line": 65,
                              "column": 8
                            },
                            "end": {
                              "line": 65,
                              "column": 82
                            }
                          },
                          "range": [
                            3395,
                            3469
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3478,
                      "end": 3512,
                      "loc": {
                        "start": {
                          "line": 66,
                          "column": 8
                        },
                        "end": {
                          "line": 66,
                          "column": 42
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3478,
                        "end": 3511,
                        "loc": {
                          "start": {
                            "line": 66,
                            "column": 8
                          },
                          "end": {
                            "line": 66,
                            "column": 41
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3478,
                          "end": 3503,
                          "loc": {
                            "start": {
                              "line": 66,
                              "column": 8
                            },
                            "end": {
                              "line": 66,
                              "column": 33
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 3478,
                            "end": 3489,
                            "loc": {
                              "start": {
                                "line": 66,
                                "column": 8
                              },
                              "end": {
                                "line": 66,
                                "column": 19
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 3478,
                              "end": 3482,
                              "loc": {
                                "start": {
                                  "line": 66,
                                  "column": 8
                                },
                                "end": {
                                  "line": 66,
                                  "column": 12
                                }
                              },
                              "leadingComments": null
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3483,
                              "end": 3489,
                              "loc": {
                                "start": {
                                  "line": 66,
                                  "column": 13
                                },
                                "end": {
                                  "line": 66,
                                  "column": 19
                                }
                              },
                              "name": "__grid"
                            },
                            "computed": false,
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3490,
                            "end": 3503,
                            "loc": {
                              "start": {
                                "line": 66,
                                "column": 20
                              },
                              "end": {
                                "line": 66,
                                "column": 33
                              }
                            },
                            "name": "frustumCulled"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "Literal",
                          "start": 3506,
                          "end": 3511,
                          "loc": {
                            "start": {
                              "line": 66,
                              "column": 36
                            },
                            "end": {
                              "line": 66,
                              "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": 3395,
                          "end": 3469,
                          "loc": {
                            "start": {
                              "line": 65,
                              "column": 8
                            },
                            "end": {
                              "line": 65,
                              "column": 82
                            }
                          },
                          "range": [
                            3395,
                            3469
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3521,
                      "end": 3555,
                      "loc": {
                        "start": {
                          "line": 67,
                          "column": 8
                        },
                        "end": {
                          "line": 67,
                          "column": 42
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3521,
                        "end": 3554,
                        "loc": {
                          "start": {
                            "line": 67,
                            "column": 8
                          },
                          "end": {
                            "line": 67,
                            "column": 41
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3521,
                          "end": 3546,
                          "loc": {
                            "start": {
                              "line": 67,
                              "column": 8
                            },
                            "end": {
                              "line": 67,
                              "column": 33
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 3521,
                            "end": 3532,
                            "loc": {
                              "start": {
                                "line": 67,
                                "column": 8
                              },
                              "end": {
                                "line": 67,
                                "column": 19
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 3521,
                              "end": 3525,
                              "loc": {
                                "start": {
                                  "line": 67,
                                  "column": 8
                                },
                                "end": {
                                  "line": 67,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3526,
                              "end": 3532,
                              "loc": {
                                "start": {
                                  "line": 67,
                                  "column": 13
                                },
                                "end": {
                                  "line": 67,
                                  "column": 19
                                }
                              },
                              "name": "__axis"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3533,
                            "end": 3546,
                            "loc": {
                              "start": {
                                "line": 67,
                                "column": 20
                              },
                              "end": {
                                "line": 67,
                                "column": 33
                              }
                            },
                            "name": "frustumCulled"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 3549,
                          "end": 3554,
                          "loc": {
                            "start": {
                              "line": 67,
                              "column": 36
                            },
                            "end": {
                              "line": 67,
                              "column": 41
                            }
                          },
                          "value": false,
                          "rawValue": false,
                          "raw": "false"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3565,
                      "end": 3606,
                      "loc": {
                        "start": {
                          "line": 69,
                          "column": 8
                        },
                        "end": {
                          "line": 69,
                          "column": 49
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3565,
                        "end": 3605,
                        "loc": {
                          "start": {
                            "line": 69,
                            "column": 8
                          },
                          "end": {
                            "line": 69,
                            "column": 48
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3565,
                          "end": 3582,
                          "loc": {
                            "start": {
                              "line": 69,
                              "column": 8
                            },
                            "end": {
                              "line": 69,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3565,
                            "end": 3569,
                            "loc": {
                              "start": {
                                "line": 69,
                                "column": 8
                              },
                              "end": {
                                "line": 69,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3570,
                            "end": 3582,
                            "loc": {
                              "start": {
                                "line": 69,
                                "column": 13
                              },
                              "end": {
                                "line": 69,
                                "column": 25
                              }
                            },
                            "name": "__dimensions"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 3585,
                          "end": 3605,
                          "loc": {
                            "start": {
                              "line": 69,
                              "column": 28
                            },
                            "end": {
                              "line": 69,
                              "column": 48
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 3589,
                            "end": 3603,
                            "loc": {
                              "start": {
                                "line": 69,
                                "column": 32
                              },
                              "end": {
                                "line": 69,
                                "column": 46
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 3589,
                              "end": 3594,
                              "loc": {
                                "start": {
                                  "line": 69,
                                  "column": 32
                                },
                                "end": {
                                  "line": 69,
                                  "column": 37
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3595,
                              "end": 3603,
                              "loc": {
                                "start": {
                                  "line": 69,
                                  "column": 38
                                },
                                "end": {
                                  "line": 69,
                                  "column": 46
                                }
                              },
                              "name": "Object3D"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "some default values",
                          "start": 3616,
                          "end": 3637,
                          "loc": {
                            "start": {
                              "line": 71,
                              "column": 8
                            },
                            "end": {
                              "line": 71,
                              "column": 29
                            }
                          },
                          "range": [
                            3616,
                            3637
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3646,
                      "end": 3665,
                      "loc": {
                        "start": {
                          "line": 72,
                          "column": 8
                        },
                        "end": {
                          "line": 72,
                          "column": 27
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3646,
                        "end": 3664,
                        "loc": {
                          "start": {
                            "line": 72,
                            "column": 8
                          },
                          "end": {
                            "line": 72,
                            "column": 26
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3646,
                          "end": 3660,
                          "loc": {
                            "start": {
                              "line": 72,
                              "column": 8
                            },
                            "end": {
                              "line": 72,
                              "column": 22
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3646,
                            "end": 3650,
                            "loc": {
                              "start": {
                                "line": 72,
                                "column": 8
                              },
                              "end": {
                                "line": 72,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3651,
                            "end": 3660,
                            "loc": {
                              "start": {
                                "line": 72,
                                "column": 13
                              },
                              "end": {
                                "line": 72,
                                "column": 22
                              }
                            },
                            "name": "gridScale"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "Literal",
                          "start": 3663,
                          "end": 3664,
                          "loc": {
                            "start": {
                              "line": 72,
                              "column": 25
                            },
                            "end": {
                              "line": 72,
                              "column": 26
                            }
                          },
                          "value": 4,
                          "rawValue": 4,
                          "raw": "4"
                        },
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "some default values",
                          "start": 3616,
                          "end": 3637,
                          "loc": {
                            "start": {
                              "line": 71,
                              "column": 8
                            },
                            "end": {
                              "line": 71,
                              "column": 29
                            }
                          },
                          "range": [
                            3616,
                            3637
                          ]
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " empirical number for nice looking",
                          "start": 3666,
                          "end": 3702,
                          "loc": {
                            "start": {
                              "line": 72,
                              "column": 28
                            },
                            "end": {
                              "line": 72,
                              "column": 64
                            }
                          },
                          "range": [
                            3666,
                            3702
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3711,
                      "end": 3732,
                      "loc": {
                        "start": {
                          "line": 73,
                          "column": 8
                        },
                        "end": {
                          "line": 73,
                          "column": 29
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3711,
                        "end": 3731,
                        "loc": {
                          "start": {
                            "line": 73,
                            "column": 8
                          },
                          "end": {
                            "line": 73,
                            "column": 28
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3711,
                          "end": 3724,
                          "loc": {
                            "start": {
                              "line": 73,
                              "column": 8
                            },
                            "end": {
                              "line": 73,
                              "column": 21
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3711,
                            "end": 3715,
                            "loc": {
                              "start": {
                                "line": 73,
                                "column": 8
                              },
                              "end": {
                                "line": 73,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3716,
                            "end": 3724,
                            "loc": {
                              "start": {
                                "line": 73,
                                "column": 13
                              },
                              "end": {
                                "line": 73,
                                "column": 21
                              }
                            },
                            "name": "gridSize"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "Literal",
                          "start": 3727,
                          "end": 3731,
                          "loc": {
                            "start": {
                              "line": 73,
                              "column": 24
                            },
                            "end": {
                              "line": 73,
                              "column": 28
                            }
                          },
                          "value": 1000,
                          "rawValue": 1000,
                          "raw": "1000"
                        },
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " empirical number for nice looking",
                          "start": 3666,
                          "end": 3702,
                          "loc": {
                            "start": {
                              "line": 72,
                              "column": 28
                            },
                            "end": {
                              "line": 72,
                              "column": 64
                            }
                          },
                          "range": [
                            3666,
                            3702
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3741,
                      "end": 3771,
                      "loc": {
                        "start": {
                          "line": 74,
                          "column": 8
                        },
                        "end": {
                          "line": 74,
                          "column": 38
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3741,
                        "end": 3770,
                        "loc": {
                          "start": {
                            "line": 74,
                            "column": 8
                          },
                          "end": {
                            "line": 74,
                            "column": 37
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3741,
                          "end": 3764,
                          "loc": {
                            "start": {
                              "line": 74,
                              "column": 8
                            },
                            "end": {
                              "line": 74,
                              "column": 31
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3741,
                            "end": 3745,
                            "loc": {
                              "start": {
                                "line": 74,
                                "column": 8
                              },
                              "end": {
                                "line": 74,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3746,
                            "end": 3764,
                            "loc": {
                              "start": {
                                "line": 74,
                                "column": 13
                              },
                              "end": {
                                "line": 74,
                                "column": 31
                              }
                            },
                            "name": "snappingSizeInGrid"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 3767,
                          "end": 3770,
                          "loc": {
                            "start": {
                              "line": 74,
                              "column": 34
                            },
                            "end": {
                              "line": 74,
                              "column": 37
                            }
                          },
                          "value": 0.1,
                          "rawValue": 0.1,
                          "raw": "0.1"
                        }
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " 10% of grid cell size",
                          "start": 3772,
                          "end": 3796,
                          "loc": {
                            "start": {
                              "line": 74,
                              "column": 39
                            },
                            "end": {
                              "line": 74,
                              "column": 63
                            }
                          },
                          "range": [
                            3772,
                            3796
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3805,
                      "end": 3849,
                      "loc": {
                        "start": {
                          "line": 75,
                          "column": 8
                        },
                        "end": {
                          "line": 75,
                          "column": 52
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3805,
                        "end": 3848,
                        "loc": {
                          "start": {
                            "line": 75,
                            "column": 8
                          },
                          "end": {
                            "line": 75,
                            "column": 51
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3805,
                          "end": 3825,
                          "loc": {
                            "start": {
                              "line": 75,
                              "column": 8
                            },
                            "end": {
                              "line": 75,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3805,
                            "end": 3809,
                            "loc": {
                              "start": {
                                "line": 75,
                                "column": 8
                              },
                              "end": {
                                "line": 75,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3810,
                            "end": 3825,
                            "loc": {
                              "start": {
                                "line": 75,
                                "column": 13
                              },
                              "end": {
                                "line": 75,
                                "column": 28
                              }
                            },
                            "name": "pointSizeInGrid"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "BinaryExpression",
                          "start": 3828,
                          "end": 3848,
                          "loc": {
                            "start": {
                              "line": 75,
                              "column": 31
                            },
                            "end": {
                              "line": 75,
                              "column": 51
                            }
                          },
                          "left": {
                            "type": "Literal",
                            "start": 3828,
                            "end": 3831,
                            "loc": {
                              "start": {
                                "line": 75,
                                "column": 31
                              },
                              "end": {
                                "line": 75,
                                "column": 34
                              }
                            },
                            "value": 0.1,
                            "rawValue": 0.1,
                            "raw": "0.1"
                          },
                          "operator": "/",
                          "right": {
                            "type": "MemberExpression",
                            "start": 3834,
                            "end": 3848,
                            "loc": {
                              "start": {
                                "line": 75,
                                "column": 37
                              },
                              "end": {
                                "line": 75,
                                "column": 51
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 3834,
                              "end": 3838,
                              "loc": {
                                "start": {
                                  "line": 75,
                                  "column": 37
                                },
                                "end": {
                                  "line": 75,
                                  "column": 41
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3839,
                              "end": 3848,
                              "loc": {
                                "start": {
                                  "line": 75,
                                  "column": 42
                                },
                                "end": {
                                  "line": 75,
                                  "column": 51
                                }
                              },
                              "name": "gridScale"
                            },
                            "computed": false
                          }
                        },
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " 10% of grid cell size",
                          "start": 3772,
                          "end": 3796,
                          "loc": {
                            "start": {
                              "line": 74,
                              "column": 39
                            },
                            "end": {
                              "line": 74,
                              "column": 63
                            }
                          },
                          "range": [
                            3772,
                            3796
                          ]
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " 10% of grid cell size",
                          "start": 3850,
                          "end": 3874,
                          "loc": {
                            "start": {
                              "line": 75,
                              "column": 53
                            },
                            "end": {
                              "line": 75,
                              "column": 77
                            }
                          },
                          "range": [
                            3850,
                            3874
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3883,
                      "end": 3912,
                      "loc": {
                        "start": {
                          "line": 76,
                          "column": 8
                        },
                        "end": {
                          "line": 76,
                          "column": 37
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3883,
                        "end": 3911,
                        "loc": {
                          "start": {
                            "line": 76,
                            "column": 8
                          },
                          "end": {
                            "line": 76,
                            "column": 36
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3883,
                          "end": 3905,
                          "loc": {
                            "start": {
                              "line": 76,
                              "column": 8
                            },
                            "end": {
                              "line": 76,
                              "column": 30
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3883,
                            "end": 3887,
                            "loc": {
                              "start": {
                                "line": 76,
                                "column": 8
                              },
                              "end": {
                                "line": 76,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3888,
                            "end": 3905,
                            "loc": {
                              "start": {
                                "line": 76,
                                "column": 13
                              },
                              "end": {
                                "line": 76,
                                "column": 30
                              }
                            },
                            "name": "chosenItemOpacity"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "Literal",
                          "start": 3908,
                          "end": 3911,
                          "loc": {
                            "start": {
                              "line": 76,
                              "column": 33
                            },
                            "end": {
                              "line": 76,
                              "column": 36
                            }
                          },
                          "value": 0.5,
                          "rawValue": 0.5,
                          "raw": "0.5"
                        },
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " 10% of grid cell size",
                          "start": 3850,
                          "end": 3874,
                          "loc": {
                            "start": {
                              "line": 75,
                              "column": 53
                            },
                            "end": {
                              "line": 75,
                              "column": 77
                            }
                          },
                          "range": [
                            3850,
                            3874
                          ]
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "initialize vertex buffers of grid+axis (must be before first render)",
                          "start": 3922,
                          "end": 3992,
                          "loc": {
                            "start": {
                              "line": 78,
                              "column": 8
                            },
                            "end": {
                              "line": 78,
                              "column": 78
                            }
                          },
                          "range": [
                            3922,
                            3992
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 4001,
                      "end": 4019,
                      "loc": {
                        "start": {
                          "line": 79,
                          "column": 8
                        },
                        "end": {
                          "line": 79,
                          "column": 26
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 4001,
                        "end": 4018,
                        "loc": {
                          "start": {
                            "line": 79,
                            "column": 8
                          },
                          "end": {
                            "line": 79,
                            "column": 25
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 4001,
                          "end": 4016,
                          "loc": {
                            "start": {
                              "line": 79,
                              "column": 8
                            },
                            "end": {
                              "line": 79,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 4001,
                            "end": 4005,
                            "loc": {
                              "start": {
                                "line": 79,
                                "column": 8
                              },
                              "end": {
                                "line": 79,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4006,
                            "end": 4016,
                            "loc": {
                              "start": {
                                "line": 79,
                                "column": 13
                              },
                              "end": {
                                "line": 79,
                                "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": 3922,
                          "end": 3992,
                          "loc": {
                            "start": {
                              "line": 78,
                              "column": 8
                            },
                            "end": {
                              "line": 78,
                              "column": 78
                            }
                          },
                          "range": [
                            3922,
                            3992
                          ]
                        }
                      ]
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 4031,
              "end": 4192,
              "loc": {
                "start": {
                  "line": 82,
                  "column": 4
                },
                "end": {
                  "line": 88,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 4038,
                "end": 4050,
                "loc": {
                  "start": {
                    "line": 82,
                    "column": 11
                  },
                  "end": {
                    "line": 82,
                    "column": 23
                  }
                },
                "name": "FindSketchOf"
              },
              "static": true,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 4050,
                "end": 4192,
                "loc": {
                  "start": {
                    "line": 82,
                    "column": 23
                  },
                  "end": {
                    "line": 88,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 4051,
                    "end": 4054,
                    "loc": {
                      "start": {
                        "line": 82,
                        "column": 24
                      },
                      "end": {
                        "line": 82,
                        "column": 27
                      }
                    },
                    "name": "obj"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 4056,
                  "end": 4192,
                  "loc": {
                    "start": {
                      "line": 82,
                      "column": 29
                    },
                    "end": {
                      "line": 88,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "WhileStatement",
                      "start": 4066,
                      "end": 4186,
                      "loc": {
                        "start": {
                          "line": 83,
                          "column": 8
                        },
                        "end": {
                          "line": 87,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "Identifier",
                        "start": 4073,
                        "end": 4076,
                        "loc": {
                          "start": {
                            "line": 83,
                            "column": 15
                          },
                          "end": {
                            "line": 83,
                            "column": 18
                          }
                        },
                        "name": "obj"
                      },
                      "body": {
                        "type": "BlockStatement",
                        "start": 4078,
                        "end": 4186,
                        "loc": {
                          "start": {
                            "line": 83,
                            "column": 20
                          },
                          "end": {
                            "line": 87,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "IfStatement",
                            "start": 4092,
                            "end": 4146,
                            "loc": {
                              "start": {
                                "line": 84,
                                "column": 12
                              },
                              "end": {
                                "line": 85,
                                "column": 27
                              }
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 4096,
                              "end": 4117,
                              "loc": {
                                "start": {
                                  "line": 84,
                                  "column": 16
                                },
                                "end": {
                                  "line": 84,
                                  "column": 37
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 4096,
                                "end": 4099,
                                "loc": {
                                  "start": {
                                    "line": 84,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 84,
                                    "column": 19
                                  }
                                },
                                "name": "obj"
                              },
                              "operator": "instanceof",
                              "right": {
                                "type": "Identifier",
                                "start": 4111,
                                "end": 4117,
                                "loc": {
                                  "start": {
                                    "line": 84,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 84,
                                    "column": 37
                                  }
                                },
                                "name": "Sketch"
                              }
                            },
                            "consequent": {
                              "type": "ReturnStatement",
                              "start": 4135,
                              "end": 4146,
                              "loc": {
                                "start": {
                                  "line": 85,
                                  "column": 16
                                },
                                "end": {
                                  "line": 85,
                                  "column": 27
                                }
                              },
                              "argument": {
                                "type": "Identifier",
                                "start": 4142,
                                "end": 4145,
                                "loc": {
                                  "start": {
                                    "line": 85,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 85,
                                    "column": 26
                                  }
                                },
                                "name": "obj"
                              }
                            },
                            "alternate": null
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 4159,
                            "end": 4176,
                            "loc": {
                              "start": {
                                "line": 86,
                                "column": 12
                              },
                              "end": {
                                "line": 86,
                                "column": 29
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 4159,
                              "end": 4175,
                              "loc": {
                                "start": {
                                  "line": 86,
                                  "column": 12
                                },
                                "end": {
                                  "line": 86,
                                  "column": 28
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "Identifier",
                                "start": 4159,
                                "end": 4162,
                                "loc": {
                                  "start": {
                                    "line": 86,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 86,
                                    "column": 15
                                  }
                                },
                                "name": "obj"
                              },
                              "right": {
                                "type": "MemberExpression",
                                "start": 4165,
                                "end": 4175,
                                "loc": {
                                  "start": {
                                    "line": 86,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 86,
                                    "column": 28
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 4165,
                                  "end": 4168,
                                  "loc": {
                                    "start": {
                                      "line": 86,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 86,
                                      "column": 21
                                    }
                                  },
                                  "name": "obj"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 4169,
                                  "end": 4175,
                                  "loc": {
                                    "start": {
                                      "line": 86,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 86,
                                      "column": 28
                                    }
                                  },
                                  "name": "parent"
                                },
                                "computed": false
                              }
                            }
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 4198,
              "end": 4377,
              "loc": {
                "start": {
                  "line": 90,
                  "column": 4
                },
                "end": {
                  "line": 96,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 4205,
                "end": 4220,
                "loc": {
                  "start": {
                    "line": 90,
                    "column": 11
                  },
                  "end": {
                    "line": 90,
                    "column": 26
                  }
                },
                "name": "FindSketchSetOf"
              },
              "static": true,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 4220,
                "end": 4377,
                "loc": {
                  "start": {
                    "line": 90,
                    "column": 26
                  },
                  "end": {
                    "line": 96,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 4221,
                    "end": 4224,
                    "loc": {
                      "start": {
                        "line": 90,
                        "column": 27
                      },
                      "end": {
                        "line": 90,
                        "column": 30
                      }
                    },
                    "name": "obj"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 4226,
                  "end": 4377,
                  "loc": {
                    "start": {
                      "line": 90,
                      "column": 32
                    },
                    "end": {
                      "line": 96,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 4236,
                      "end": 4247,
                      "loc": {
                        "start": {
                          "line": 91,
                          "column": 8
                        },
                        "end": {
                          "line": 91,
                          "column": 19
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 4240,
                          "end": 4246,
                          "loc": {
                            "start": {
                              "line": 91,
                              "column": 12
                            },
                            "end": {
                              "line": 91,
                              "column": 18
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 4240,
                            "end": 4246,
                            "loc": {
                              "start": {
                                "line": 91,
                                "column": 12
                              },
                              "end": {
                                "line": 91,
                                "column": 18
                              }
                            },
                            "name": "result"
                          },
                          "init": null
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 4256,
                      "end": 4348,
                      "loc": {
                        "start": {
                          "line": 92,
                          "column": 8
                        },
                        "end": {
                          "line": 94,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 4256,
                        "end": 4347,
                        "loc": {
                          "start": {
                            "line": 92,
                            "column": 8
                          },
                          "end": {
                            "line": 94,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 4256,
                          "end": 4277,
                          "loc": {
                            "start": {
                              "line": 92,
                              "column": 8
                            },
                            "end": {
                              "line": 92,
                              "column": 29
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 4256,
                            "end": 4259,
                            "loc": {
                              "start": {
                                "line": 92,
                                "column": 8
                              },
                              "end": {
                                "line": 92,
                                "column": 11
                              }
                            },
                            "name": "obj"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4260,
                            "end": 4277,
                            "loc": {
                              "start": {
                                "line": 92,
                                "column": 12
                              },
                              "end": {
                                "line": 92,
                                "column": 29
                              }
                            },
                            "name": "traverseAncestors"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 4278,
                            "end": 4346,
                            "loc": {
                              "start": {
                                "line": 92,
                                "column": 30
                              },
                              "end": {
                                "line": 94,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 4278,
                                "end": 4279,
                                "loc": {
                                  "start": {
                                    "line": 92,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 92,
                                    "column": 31
                                  }
                                },
                                "name": "s"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 4283,
                              "end": 4346,
                              "loc": {
                                "start": {
                                  "line": 92,
                                  "column": 35
                                },
                                "end": {
                                  "line": 94,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 4297,
                                  "end": 4336,
                                  "loc": {
                                    "start": {
                                      "line": 93,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 93,
                                      "column": 51
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 4297,
                                    "end": 4335,
                                    "loc": {
                                      "start": {
                                        "line": 93,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 93,
                                        "column": 50
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "Identifier",
                                      "start": 4297,
                                      "end": 4303,
                                      "loc": {
                                        "start": {
                                          "line": 93,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 93,
                                          "column": 18
                                        }
                                      },
                                      "name": "result"
                                    },
                                    "right": {
                                      "type": "LogicalExpression",
                                      "start": 4306,
                                      "end": 4335,
                                      "loc": {
                                        "start": {
                                          "line": 93,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 93,
                                          "column": 50
                                        }
                                      },
                                      "left": {
                                        "type": "Identifier",
                                        "start": 4306,
                                        "end": 4312,
                                        "loc": {
                                          "start": {
                                            "line": 93,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 93,
                                            "column": 27
                                          }
                                        },
                                        "name": "result"
                                      },
                                      "operator": "||",
                                      "right": {
                                        "type": "MemberExpression",
                                        "start": 4316,
                                        "end": 4335,
                                        "loc": {
                                          "start": {
                                            "line": 93,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 93,
                                            "column": 50
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 4316,
                                          "end": 4325,
                                          "loc": {
                                            "start": {
                                              "line": 93,
                                              "column": 31
                                            },
                                            "end": {
                                              "line": 93,
                                              "column": 40
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 4316,
                                            "end": 4317,
                                            "loc": {
                                              "start": {
                                                "line": 93,
                                                "column": 31
                                              },
                                              "end": {
                                                "line": 93,
                                                "column": 32
                                              }
                                            },
                                            "name": "s"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 4318,
                                            "end": 4325,
                                            "loc": {
                                              "start": {
                                                "line": 93,
                                                "column": 33
                                              },
                                              "end": {
                                                "line": 93,
                                                "column": 40
                                              }
                                            },
                                            "name": "members"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 4326,
                                          "end": 4335,
                                          "loc": {
                                            "start": {
                                              "line": 93,
                                              "column": 41
                                            },
                                            "end": {
                                              "line": 93,
                                              "column": 50
                                            }
                                          },
                                          "name": "SketchSet"
                                        },
                                        "computed": false
                                      }
                                    }
                                  }
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 4357,
                      "end": 4371,
                      "loc": {
                        "start": {
                          "line": 95,
                          "column": 8
                        },
                        "end": {
                          "line": 95,
                          "column": 22
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 4364,
                        "end": 4370,
                        "loc": {
                          "start": {
                            "line": 95,
                            "column": 15
                          },
                          "end": {
                            "line": 95,
                            "column": 21
                          }
                        },
                        "name": "result"
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 4383,
              "end": 4460,
              "loc": {
                "start": {
                  "line": 98,
                  "column": 4
                },
                "end": {
                  "line": 100,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 4383,
                "end": 4390,
                "loc": {
                  "start": {
                    "line": 98,
                    "column": 4
                  },
                  "end": {
                    "line": 98,
                    "column": 11
                  }
                },
                "name": "getPart"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 4390,
                "end": 4460,
                "loc": {
                  "start": {
                    "line": 98,
                    "column": 11
                  },
                  "end": {
                    "line": 100,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 4393,
                  "end": 4460,
                  "loc": {
                    "start": {
                      "line": 98,
                      "column": 14
                    },
                    "end": {
                      "line": 100,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 4403,
                      "end": 4429,
                      "loc": {
                        "start": {
                          "line": 99,
                          "column": 8
                        },
                        "end": {
                          "line": 99,
                          "column": 34
                        }
                      },
                      "argument": {
                        "type": "MemberExpression",
                        "start": 4410,
                        "end": 4428,
                        "loc": {
                          "start": {
                            "line": 99,
                            "column": 15
                          },
                          "end": {
                            "line": 99,
                            "column": 33
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 4410,
                          "end": 4421,
                          "loc": {
                            "start": {
                              "line": 99,
                              "column": 15
                            },
                            "end": {
                              "line": 99,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 4410,
                            "end": 4414,
                            "loc": {
                              "start": {
                                "line": 99,
                                "column": 15
                              },
                              "end": {
                                "line": 99,
                                "column": 19
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4415,
                            "end": 4421,
                            "loc": {
                              "start": {
                                "line": 99,
                                "column": 20
                              },
                              "end": {
                                "line": 99,
                                "column": 26
                              }
                            },
                            "name": "parent"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 4422,
                          "end": 4428,
                          "loc": {
                            "start": {
                              "line": 99,
                              "column": 27
                            },
                            "end": {
                              "line": 99,
                              "column": 33
                            }
                          },
                          "name": "parent"
                        },
                        "computed": false
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " Part.SketchSet.Sketch",
                          "start": 4430,
                          "end": 4454,
                          "loc": {
                            "start": {
                              "line": 99,
                              "column": 35
                            },
                            "end": {
                              "line": 99,
                              "column": 59
                            }
                          },
                          "range": [
                            4430,
                            4454
                          ]
                        }
                      ]
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " Physically add objects to the sketch (in contrast to addAuxObject)",
                  "start": 4466,
                  "end": 4535,
                  "loc": {
                    "start": {
                      "line": 102,
                      "column": 4
                    },
                    "end": {
                      "line": 102,
                      "column": 73
                    }
                  },
                  "range": [
                    4466,
                    4535
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " If some objects were previously added with addAuxObject, automatically remove them from aux objects",
                  "start": 4540,
                  "end": 4642,
                  "loc": {
                    "start": {
                      "line": 103,
                      "column": 4
                    },
                    "end": {
                      "line": 103,
                      "column": 106
                    }
                  },
                  "range": [
                    4540,
                    4642
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " possible options:",
                  "start": 4647,
                  "end": 4667,
                  "loc": {
                    "start": {
                      "line": 104,
                      "column": 4
                    },
                    "end": {
                      "line": 104,
                      "column": 24
                    }
                  },
                  "range": [
                    4647,
                    4667
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": "   onServer (default: true) - whether to send commands to the server.",
                  "start": 4672,
                  "end": 4743,
                  "loc": {
                    "start": {
                      "line": 105,
                      "column": 4
                    },
                    "end": {
                      "line": 105,
                      "column": 75
                    }
                  },
                  "range": [
                    4672,
                    4743
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": "   onClient (default: true) - whether to add objects to children",
                  "start": 4748,
                  "end": 4814,
                  "loc": {
                    "start": {
                      "line": 106,
                      "column": 4
                    },
                    "end": {
                      "line": 106,
                      "column": 70
                    }
                  },
                  "range": [
                    4748,
                    4814
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": "   autoconstraint (default: false) - if true, then implied constraints are generated if neccessary.",
                  "start": 4819,
                  "end": 4920,
                  "loc": {
                    "start": {
                      "line": 107,
                      "column": 4
                    },
                    "end": {
                      "line": 107,
                      "column": 105
                    }
                  },
                  "range": [
                    4819,
                    4920
                  ]
                },
                {
                  "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": 4925,
                  "end": 5070,
                  "loc": {
                    "start": {
                      "line": 108,
                      "column": 4
                    },
                    "end": {
                      "line": 108,
                      "column": 149
                    }
                  },
                  "range": [
                    4925,
                    5070
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 5075,
              "end": 7001,
              "loc": {
                "start": {
                  "line": 109,
                  "column": 4
                },
                "end": {
                  "line": 150,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 5075,
                "end": 5086,
                "loc": {
                  "start": {
                    "line": 109,
                    "column": 4
                  },
                  "end": {
                    "line": 109,
                    "column": 15
                  }
                },
                "name": "addToSketch",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 5086,
                "end": 7001,
                "loc": {
                  "start": {
                    "line": 109,
                    "column": 15
                  },
                  "end": {
                    "line": 150,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 5087,
                    "end": 5094,
                    "loc": {
                      "start": {
                        "line": 109,
                        "column": 16
                      },
                      "end": {
                        "line": 109,
                        "column": 23
                      }
                    },
                    "name": "objects"
                  },
                  {
                    "type": "AssignmentPattern",
                    "start": 5096,
                    "end": 5108,
                    "loc": {
                      "start": {
                        "line": 109,
                        "column": 25
                      },
                      "end": {
                        "line": 109,
                        "column": 37
                      }
                    },
                    "operator": "=",
                    "left": {
                      "type": "Identifier",
                      "start": 5096,
                      "end": 5103,
                      "loc": {
                        "start": {
                          "line": 109,
                          "column": 25
                        },
                        "end": {
                          "line": 109,
                          "column": 32
                        }
                      },
                      "name": "options"
                    },
                    "right": {
                      "type": "ObjectExpression",
                      "start": 5106,
                      "end": 5108,
                      "loc": {
                        "start": {
                          "line": 109,
                          "column": 35
                        },
                        "end": {
                          "line": 109,
                          "column": 37
                        }
                      },
                      "properties": []
                    }
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 5110,
                  "end": 7001,
                  "loc": {
                    "start": {
                      "line": 109,
                      "column": 39
                    },
                    "end": {
                      "line": 150,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 5120,
                      "end": 5180,
                      "loc": {
                        "start": {
                          "line": 110,
                          "column": 8
                        },
                        "end": {
                          "line": 110,
                          "column": 68
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 5124,
                        "end": 5154,
                        "loc": {
                          "start": {
                            "line": 110,
                            "column": 12
                          },
                          "end": {
                            "line": 110,
                            "column": 42
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 5124,
                          "end": 5140,
                          "loc": {
                            "start": {
                              "line": 110,
                              "column": 12
                            },
                            "end": {
                              "line": 110,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 5124,
                            "end": 5131,
                            "loc": {
                              "start": {
                                "line": 110,
                                "column": 12
                              },
                              "end": {
                                "line": 110,
                                "column": 19
                              }
                            },
                            "name": "options"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 5132,
                            "end": 5140,
                            "loc": {
                              "start": {
                                "line": 110,
                                "column": 20
                              },
                              "end": {
                                "line": 110,
                                "column": 28
                              }
                            },
                            "name": "onServer"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Identifier",
                          "start": 5145,
                          "end": 5154,
                          "loc": {
                            "start": {
                              "line": 110,
                              "column": 33
                            },
                            "end": {
                              "line": 110,
                              "column": 42
                            }
                          },
                          "name": "undefined"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 5156,
                        "end": 5180,
                        "loc": {
                          "start": {
                            "line": 110,
                            "column": 44
                          },
                          "end": {
                            "line": 110,
                            "column": 68
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 5156,
                          "end": 5179,
                          "loc": {
                            "start": {
                              "line": 110,
                              "column": 44
                            },
                            "end": {
                              "line": 110,
                              "column": 67
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 5156,
                            "end": 5172,
                            "loc": {
                              "start": {
                                "line": 110,
                                "column": 44
                              },
                              "end": {
                                "line": 110,
                                "column": 60
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 5156,
                              "end": 5163,
                              "loc": {
                                "start": {
                                  "line": 110,
                                  "column": 44
                                },
                                "end": {
                                  "line": 110,
                                  "column": 51
                                }
                              },
                              "name": "options"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5164,
                              "end": 5172,
                              "loc": {
                                "start": {
                                  "line": 110,
                                  "column": 52
                                },
                                "end": {
                                  "line": 110,
                                  "column": 60
                                }
                              },
                              "name": "onServer"
                            },
                            "computed": false
                          },
                          "right": {
                            "type": "Literal",
                            "start": 5175,
                            "end": 5179,
                            "loc": {
                              "start": {
                                "line": 110,
                                "column": 63
                              },
                              "end": {
                                "line": 110,
                                "column": 67
                              }
                            },
                            "value": true,
                            "rawValue": true,
                            "raw": "true"
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 5189,
                      "end": 5249,
                      "loc": {
                        "start": {
                          "line": 111,
                          "column": 8
                        },
                        "end": {
                          "line": 111,
                          "column": 68
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 5193,
                        "end": 5223,
                        "loc": {
                          "start": {
                            "line": 111,
                            "column": 12
                          },
                          "end": {
                            "line": 111,
                            "column": 42
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 5193,
                          "end": 5209,
                          "loc": {
                            "start": {
                              "line": 111,
                              "column": 12
                            },
                            "end": {
                              "line": 111,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 5193,
                            "end": 5200,
                            "loc": {
                              "start": {
                                "line": 111,
                                "column": 12
                              },
                              "end": {
                                "line": 111,
                                "column": 19
                              }
                            },
                            "name": "options"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 5201,
                            "end": 5209,
                            "loc": {
                              "start": {
                                "line": 111,
                                "column": 20
                              },
                              "end": {
                                "line": 111,
                                "column": 28
                              }
                            },
                            "name": "onClient"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Identifier",
                          "start": 5214,
                          "end": 5223,
                          "loc": {
                            "start": {
                              "line": 111,
                              "column": 33
                            },
                            "end": {
                              "line": 111,
                              "column": 42
                            }
                          },
                          "name": "undefined"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 5225,
                        "end": 5249,
                        "loc": {
                          "start": {
                            "line": 111,
                            "column": 44
                          },
                          "end": {
                            "line": 111,
                            "column": 68
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 5225,
                          "end": 5248,
                          "loc": {
                            "start": {
                              "line": 111,
                              "column": 44
                            },
                            "end": {
                              "line": 111,
                              "column": 67
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 5225,
                            "end": 5241,
                            "loc": {
                              "start": {
                                "line": 111,
                                "column": 44
                              },
                              "end": {
                                "line": 111,
                                "column": 60
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 5225,
                              "end": 5232,
                              "loc": {
                                "start": {
                                  "line": 111,
                                  "column": 44
                                },
                                "end": {
                                  "line": 111,
                                  "column": 51
                                }
                              },
                              "name": "options"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5233,
                              "end": 5241,
                              "loc": {
                                "start": {
                                  "line": 111,
                                  "column": 52
                                },
                                "end": {
                                  "line": 111,
                                  "column": 60
                                }
                              },
                              "name": "onClient"
                            },
                            "computed": false
                          },
                          "right": {
                            "type": "Literal",
                            "start": 5244,
                            "end": 5248,
                            "loc": {
                              "start": {
                                "line": 111,
                                "column": 63
                              },
                              "end": {
                                "line": 111,
                                "column": 67
                              }
                            },
                            "value": true,
                            "rawValue": true,
                            "raw": "true"
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 5258,
                      "end": 5327,
                      "loc": {
                        "start": {
                          "line": 112,
                          "column": 8
                        },
                        "end": {
                          "line": 112,
                          "column": 77
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 5262,
                        "end": 5296,
                        "loc": {
                          "start": {
                            "line": 112,
                            "column": 12
                          },
                          "end": {
                            "line": 112,
                            "column": 46
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 5262,
                          "end": 5282,
                          "loc": {
                            "start": {
                              "line": 112,
                              "column": 12
                            },
                            "end": {
                              "line": 112,
                              "column": 32
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 5262,
                            "end": 5269,
                            "loc": {
                              "start": {
                                "line": 112,
                                "column": 12
                              },
                              "end": {
                                "line": 112,
                                "column": 19
                              }
                            },
                            "name": "options"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 5270,
                            "end": 5282,
                            "loc": {
                              "start": {
                                "line": 112,
                                "column": 20
                              },
                              "end": {
                                "line": 112,
                                "column": 32
                              }
                            },
                            "name": "updateSketch"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Identifier",
                          "start": 5287,
                          "end": 5296,
                          "loc": {
                            "start": {
                              "line": 112,
                              "column": 37
                            },
                            "end": {
                              "line": 112,
                              "column": 46
                            }
                          },
                          "name": "undefined"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 5298,
                        "end": 5327,
                        "loc": {
                          "start": {
                            "line": 112,
                            "column": 48
                          },
                          "end": {
                            "line": 112,
                            "column": 77
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 5298,
                          "end": 5326,
                          "loc": {
                            "start": {
                              "line": 112,
                              "column": 48
                            },
                            "end": {
                              "line": 112,
                              "column": 76
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 5298,
                            "end": 5318,
                            "loc": {
                              "start": {
                                "line": 112,
                                "column": 48
                              },
                              "end": {
                                "line": 112,
                                "column": 68
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 5298,
                              "end": 5305,
                              "loc": {
                                "start": {
                                  "line": 112,
                                  "column": 48
                                },
                                "end": {
                                  "line": 112,
                                  "column": 55
                                }
                              },
                              "name": "options"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5306,
                              "end": 5318,
                              "loc": {
                                "start": {
                                  "line": 112,
                                  "column": 56
                                },
                                "end": {
                                  "line": 112,
                                  "column": 68
                                }
                              },
                              "name": "updateSketch"
                            },
                            "computed": false
                          },
                          "right": {
                            "type": "Literal",
                            "start": 5321,
                            "end": 5326,
                            "loc": {
                              "start": {
                                "line": 112,
                                "column": 71
                              },
                              "end": {
                                "line": 112,
                                "column": 76
                              }
                            },
                            "value": false,
                            "rawValue": false,
                            "raw": "false"
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 5336,
                      "end": 5409,
                      "loc": {
                        "start": {
                          "line": 113,
                          "column": 8
                        },
                        "end": {
                          "line": 113,
                          "column": 81
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 5340,
                        "end": 5376,
                        "loc": {
                          "start": {
                            "line": 113,
                            "column": 12
                          },
                          "end": {
                            "line": 113,
                            "column": 48
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 5340,
                          "end": 5362,
                          "loc": {
                            "start": {
                              "line": 113,
                              "column": 12
                            },
                            "end": {
                              "line": 113,
                              "column": 34
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 5340,
                            "end": 5347,
                            "loc": {
                              "start": {
                                "line": 113,
                                "column": 12
                              },
                              "end": {
                                "line": 113,
                                "column": 19
                              }
                            },
                            "name": "options"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 5348,
                            "end": 5362,
                            "loc": {
                              "start": {
                                "line": 113,
                                "column": 20
                              },
                              "end": {
                                "line": 113,
                                "column": 34
                              }
                            },
                            "name": "autoconstraint"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Identifier",
                          "start": 5367,
                          "end": 5376,
                          "loc": {
                            "start": {
                              "line": 113,
                              "column": 39
                            },
                            "end": {
                              "line": 113,
                              "column": 48
                            }
                          },
                          "name": "undefined"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 5378,
                        "end": 5409,
                        "loc": {
                          "start": {
                            "line": 113,
                            "column": 50
                          },
                          "end": {
                            "line": 113,
                            "column": 81
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 5378,
                          "end": 5408,
                          "loc": {
                            "start": {
                              "line": 113,
                              "column": 50
                            },
                            "end": {
                              "line": 113,
                              "column": 80
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 5378,
                            "end": 5400,
                            "loc": {
                              "start": {
                                "line": 113,
                                "column": 50
                              },
                              "end": {
                                "line": 113,
                                "column": 72
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 5378,
                              "end": 5385,
                              "loc": {
                                "start": {
                                  "line": 113,
                                  "column": 50
                                },
                                "end": {
                                  "line": 113,
                                  "column": 57
                                }
                              },
                              "name": "options"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5386,
                              "end": 5400,
                              "loc": {
                                "start": {
                                  "line": 113,
                                  "column": 58
                                },
                                "end": {
                                  "line": 113,
                                  "column": 72
                                }
                              },
                              "name": "autoconstraint"
                            },
                            "computed": false
                          },
                          "right": {
                            "type": "Literal",
                            "start": 5403,
                            "end": 5408,
                            "loc": {
                              "start": {
                                "line": 113,
                                "column": 75
                              },
                              "end": {
                                "line": 113,
                                "column": 80
                              }
                            },
                            "value": false,
                            "rawValue": false,
                            "raw": "false"
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 5419,
                      "end": 5448,
                      "loc": {
                        "start": {
                          "line": 115,
                          "column": 8
                        },
                        "end": {
                          "line": 115,
                          "column": 37
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 5419,
                        "end": 5447,
                        "loc": {
                          "start": {
                            "line": 115,
                            "column": 8
                          },
                          "end": {
                            "line": 115,
                            "column": 36
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 5419,
                          "end": 5426,
                          "loc": {
                            "start": {
                              "line": 115,
                              "column": 8
                            },
                            "end": {
                              "line": 115,
                              "column": 15
                            }
                          },
                          "name": "objects"
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 5429,
                          "end": 5447,
                          "loc": {
                            "start": {
                              "line": 115,
                              "column": 18
                            },
                            "end": {
                              "line": 115,
                              "column": 36
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 5429,
                            "end": 5438,
                            "loc": {
                              "start": {
                                "line": 115,
                                "column": 18
                              },
                              "end": {
                                "line": 115,
                                "column": 27
                              }
                            },
                            "object": {
                              "type": "ArrayExpression",
                              "start": 5429,
                              "end": 5431,
                              "loc": {
                                "start": {
                                  "line": 115,
                                  "column": 18
                                },
                                "end": {
                                  "line": 115,
                                  "column": 20
                                }
                              },
                              "elements": []
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5432,
                              "end": 5438,
                              "loc": {
                                "start": {
                                  "line": 115,
                                  "column": 21
                                },
                                "end": {
                                  "line": 115,
                                  "column": 27
                                }
                              },
                              "name": "concat"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 5439,
                              "end": 5446,
                              "loc": {
                                "start": {
                                  "line": 115,
                                  "column": 28
                                },
                                "end": {
                                  "line": 115,
                                  "column": 35
                                }
                              },
                              "name": "objects"
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 5457,
                      "end": 5486,
                      "loc": {
                        "start": {
                          "line": 116,
                          "column": 8
                        },
                        "end": {
                          "line": 116,
                          "column": 37
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 5461,
                          "end": 5485,
                          "loc": {
                            "start": {
                              "line": 116,
                              "column": 12
                            },
                            "end": {
                              "line": 116,
                              "column": 36
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 5461,
                            "end": 5469,
                            "loc": {
                              "start": {
                                "line": 116,
                                "column": 12
                              },
                              "end": {
                                "line": 116,
                                "column": 20
                              }
                            },
                            "name": "sketcher"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 5472,
                            "end": 5485,
                            "loc": {
                              "start": {
                                "line": 116,
                                "column": 23
                              },
                              "end": {
                                "line": 116,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 5472,
                              "end": 5476,
                              "loc": {
                                "start": {
                                  "line": 116,
                                  "column": 23
                                },
                                "end": {
                                  "line": 116,
                                  "column": 27
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5477,
                              "end": 5485,
                              "loc": {
                                "start": {
                                  "line": 116,
                                  "column": 28
                                },
                                "end": {
                                  "line": 116,
                                  "column": 36
                                }
                              },
                              "name": "sketcher"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 5495,
                      "end": 5528,
                      "loc": {
                        "start": {
                          "line": 117,
                          "column": 8
                        },
                        "end": {
                          "line": 117,
                          "column": 41
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 5499,
                          "end": 5527,
                          "loc": {
                            "start": {
                              "line": 117,
                              "column": 12
                            },
                            "end": {
                              "line": 117,
                              "column": 40
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 5499,
                            "end": 5503,
                            "loc": {
                              "start": {
                                "line": 117,
                                "column": 12
                              },
                              "end": {
                                "line": 117,
                                "column": 16
                              }
                            },
                            "name": "view"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 5506,
                            "end": 5527,
                            "loc": {
                              "start": {
                                "line": 117,
                                "column": 19
                              },
                              "end": {
                                "line": 117,
                                "column": 40
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 5506,
                              "end": 5514,
                              "loc": {
                                "start": {
                                  "line": 117,
                                  "column": 19
                                },
                                "end": {
                                  "line": 117,
                                  "column": 27
                                }
                              },
                              "name": "sketcher"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5515,
                              "end": 5527,
                              "loc": {
                                "start": {
                                  "line": 117,
                                  "column": 28
                                },
                                "end": {
                                  "line": 117,
                                  "column": 40
                                }
                              },
                              "name": "__parentView"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 5538,
                      "end": 5601,
                      "loc": {
                        "start": {
                          "line": 119,
                          "column": 8
                        },
                        "end": {
                          "line": 120,
                          "column": 37
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 5542,
                        "end": 5562,
                        "loc": {
                          "start": {
                            "line": 119,
                            "column": 12
                          },
                          "end": {
                            "line": 119,
                            "column": 32
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 5542,
                          "end": 5556,
                          "loc": {
                            "start": {
                              "line": 119,
                              "column": 12
                            },
                            "end": {
                              "line": 119,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 5542,
                            "end": 5549,
                            "loc": {
                              "start": {
                                "line": 119,
                                "column": 12
                              },
                              "end": {
                                "line": 119,
                                "column": 19
                              }
                            },
                            "name": "objects"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 5550,
                            "end": 5556,
                            "loc": {
                              "start": {
                                "line": 119,
                                "column": 20
                              },
                              "end": {
                                "line": 119,
                                "column": 26
                              }
                            },
                            "name": "length"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Literal",
                          "start": 5561,
                          "end": 5562,
                          "loc": {
                            "start": {
                              "line": 119,
                              "column": 31
                            },
                            "end": {
                              "line": 119,
                              "column": 32
                            }
                          },
                          "value": 0,
                          "rawValue": 0,
                          "raw": "0"
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 5576,
                        "end": 5601,
                        "loc": {
                          "start": {
                            "line": 120,
                            "column": 12
                          },
                          "end": {
                            "line": 120,
                            "column": 37
                          }
                        },
                        "argument": {
                          "type": "CallExpression",
                          "start": 5583,
                          "end": 5600,
                          "loc": {
                            "start": {
                              "line": 120,
                              "column": 19
                            },
                            "end": {
                              "line": 120,
                              "column": 36
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 5583,
                            "end": 5598,
                            "loc": {
                              "start": {
                                "line": 120,
                                "column": 19
                              },
                              "end": {
                                "line": 120,
                                "column": 34
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 5583,
                              "end": 5590,
                              "loc": {
                                "start": {
                                  "line": 120,
                                  "column": 19
                                },
                                "end": {
                                  "line": 120,
                                  "column": 26
                                }
                              },
                              "name": "Promise"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5591,
                              "end": 5598,
                              "loc": {
                                "start": {
                                  "line": 120,
                                  "column": 27
                                },
                                "end": {
                                  "line": 120,
                                  "column": 34
                                }
                              },
                              "name": "resolve"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 5611,
                      "end": 5675,
                      "loc": {
                        "start": {
                          "line": 122,
                          "column": 8
                        },
                        "end": {
                          "line": 123,
                          "column": 42
                        }
                      },
                      "test": {
                        "type": "MemberExpression",
                        "start": 5615,
                        "end": 5631,
                        "loc": {
                          "start": {
                            "line": 122,
                            "column": 12
                          },
                          "end": {
                            "line": 122,
                            "column": 28
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 5615,
                          "end": 5622,
                          "loc": {
                            "start": {
                              "line": 122,
                              "column": 12
                            },
                            "end": {
                              "line": 122,
                              "column": 19
                            }
                          },
                          "name": "options"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 5623,
                          "end": 5631,
                          "loc": {
                            "start": {
                              "line": 122,
                              "column": 20
                            },
                            "end": {
                              "line": 122,
                              "column": 28
                            }
                          },
                          "name": "onClient"
                        },
                        "computed": false
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 5645,
                        "end": 5675,
                        "loc": {
                          "start": {
                            "line": 123,
                            "column": 12
                          },
                          "end": {
                            "line": 123,
                            "column": 42
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 5645,
                          "end": 5674,
                          "loc": {
                            "start": {
                              "line": 123,
                              "column": 12
                            },
                            "end": {
                              "line": 123,
                              "column": 41
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 5645,
                            "end": 5659,
                            "loc": {
                              "start": {
                                "line": 123,
                                "column": 12
                              },
                              "end": {
                                "line": 123,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 5645,
                              "end": 5653,
                              "loc": {
                                "start": {
                                  "line": 123,
                                  "column": 12
                                },
                                "end": {
                                  "line": 123,
                                  "column": 20
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 5645,
                                "end": 5649,
                                "loc": {
                                  "start": {
                                    "line": 123,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 123,
                                    "column": 16
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 5650,
                                "end": 5653,
                                "loc": {
                                  "start": {
                                    "line": 123,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 123,
                                    "column": 20
                                  }
                                },
                                "name": "add"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5654,
                              "end": 5659,
                              "loc": {
                                "start": {
                                  "line": 123,
                                  "column": 21
                                },
                                "end": {
                                  "line": 123,
                                  "column": 26
                                }
                              },
                              "name": "apply"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "ThisExpression",
                              "start": 5660,
                              "end": 5664,
                              "loc": {
                                "start": {
                                  "line": 123,
                                  "column": 27
                                },
                                "end": {
                                  "line": 123,
                                  "column": 31
                                }
                              }
                            },
                            {
                              "type": "Identifier",
                              "start": 5666,
                              "end": 5673,
                              "loc": {
                                "start": {
                                  "line": 123,
                                  "column": 33
                                },
                                "end": {
                                  "line": 123,
                                  "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": 5676,
                          "end": 5770,
                          "loc": {
                            "start": {
                              "line": 123,
                              "column": 43
                            },
                            "end": {
                              "line": 123,
                              "column": 137
                            }
                          },
                          "range": [
                            5676,
                            5770
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 5780,
                      "end": 6579,
                      "loc": {
                        "start": {
                          "line": 125,
                          "column": 8
                        },
                        "end": {
                          "line": 141,
                          "column": 10
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 5784,
                          "end": 6578,
                          "loc": {
                            "start": {
                              "line": 125,
                              "column": 12
                            },
                            "end": {
                              "line": 141,
                              "column": 9
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 5784,
                            "end": 5795,
                            "loc": {
                              "start": {
                                "line": 125,
                                "column": 12
                              },
                              "end": {
                                "line": 125,
                                "column": 23
                              }
                            },
                            "name": "afterServer",
                            "leadingComments": null
                          },
                          "init": {
                            "type": "ArrowFunctionExpression",
                            "start": 5798,
                            "end": 6578,
                            "loc": {
                              "start": {
                                "line": 125,
                                "column": 26
                              },
                              "end": {
                                "line": 141,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [],
                            "body": {
                              "type": "BlockStatement",
                              "start": 5804,
                              "end": 6578,
                              "loc": {
                                "start": {
                                  "line": 125,
                                  "column": 32
                                },
                                "end": {
                                  "line": 141,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 5818,
                                  "end": 6086,
                                  "loc": {
                                    "start": {
                                      "line": 126,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 132,
                                      "column": 15
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 5818,
                                    "end": 6085,
                                    "loc": {
                                      "start": {
                                        "line": 126,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 132,
                                        "column": 14
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 5818,
                                      "end": 5833,
                                      "loc": {
                                        "start": {
                                          "line": 126,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 126,
                                          "column": 27
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 5818,
                                        "end": 5825,
                                        "loc": {
                                          "start": {
                                            "line": 126,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 126,
                                            "column": 19
                                          }
                                        },
                                        "name": "objects"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 5826,
                                        "end": 5833,
                                        "loc": {
                                          "start": {
                                            "line": 126,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 126,
                                            "column": 27
                                          }
                                        },
                                        "name": "forEach"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "ArrowFunctionExpression",
                                        "start": 5834,
                                        "end": 6084,
                                        "loc": {
                                          "start": {
                                            "line": 126,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 132,
                                            "column": 13
                                          }
                                        },
                                        "id": null,
                                        "generator": false,
                                        "expression": false,
                                        "async": false,
                                        "params": [
                                          {
                                            "type": "Identifier",
                                            "start": 5834,
                                            "end": 5837,
                                            "loc": {
                                              "start": {
                                                "line": 126,
                                                "column": 28
                                              },
                                              "end": {
                                                "line": 126,
                                                "column": 31
                                              }
                                            },
                                            "name": "obj"
                                          }
                                        ],
                                        "body": {
                                          "type": "BlockStatement",
                                          "start": 5841,
                                          "end": 6084,
                                          "loc": {
                                            "start": {
                                              "line": 126,
                                              "column": 35
                                            },
                                            "end": {
                                              "line": 132,
                                              "column": 13
                                            }
                                          },
                                          "body": [
                                            {
                                              "type": "IfStatement",
                                              "start": 5859,
                                              "end": 5919,
                                              "loc": {
                                                "start": {
                                                  "line": 127,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 128,
                                                  "column": 27
                                                }
                                              },
                                              "test": {
                                                "type": "CallExpression",
                                                "start": 5863,
                                                "end": 5890,
                                                "loc": {
                                                  "start": {
                                                    "line": 127,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 127,
                                                    "column": 47
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 5863,
                                                  "end": 5885,
                                                  "loc": {
                                                    "start": {
                                                      "line": 127,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 127,
                                                      "column": 42
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 5863,
                                                    "end": 5881,
                                                    "loc": {
                                                      "start": {
                                                        "line": 127,
                                                        "column": 20
                                                      },
                                                      "end": {
                                                        "line": 127,
                                                        "column": 38
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "ThisExpression",
                                                      "start": 5863,
                                                      "end": 5867,
                                                      "loc": {
                                                        "start": {
                                                          "line": 127,
                                                          "column": 20
                                                        },
                                                        "end": {
                                                          "line": 127,
                                                          "column": 24
                                                        }
                                                      }
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 5868,
                                                      "end": 5881,
                                                      "loc": {
                                                        "start": {
                                                          "line": 127,
                                                          "column": 25
                                                        },
                                                        "end": {
                                                          "line": 127,
                                                          "column": 38
                                                        }
                                                      },
                                                      "name": "sketchObjects"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 5882,
                                                    "end": 5885,
                                                    "loc": {
                                                      "start": {
                                                        "line": 127,
                                                        "column": 39
                                                      },
                                                      "end": {
                                                        "line": 127,
                                                        "column": 42
                                                      }
                                                    },
                                                    "name": "has"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 5886,
                                                    "end": 5889,
                                                    "loc": {
                                                      "start": {
                                                        "line": 127,
                                                        "column": 43
                                                      },
                                                      "end": {
                                                        "line": 127,
                                                        "column": 46
                                                      }
                                                    },
                                                    "name": "obj"
                                                  }
                                                ]
                                              },
                                              "consequent": {
                                                "type": "ReturnStatement",
                                                "start": 5912,
                                                "end": 5919,
                                                "loc": {
                                                  "start": {
                                                    "line": 128,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 128,
                                                    "column": 27
                                                  }
                                                },
                                                "argument": null
                                              },
                                              "alternate": null
                                            },
                                            {
                                              "type": "ExpressionStatement",
                                              "start": 5936,
                                              "end": 5964,
                                              "loc": {
                                                "start": {
                                                  "line": 129,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 129,
                                                  "column": 44
                                                }
                                              },
                                              "expression": {
                                                "type": "CallExpression",
                                                "start": 5936,
                                                "end": 5963,
                                                "loc": {
                                                  "start": {
                                                    "line": 129,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 129,
                                                    "column": 43
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 5936,
                                                  "end": 5958,
                                                  "loc": {
                                                    "start": {
                                                      "line": 129,
                                                      "column": 16
                                                    },
                                                    "end": {
                                                      "line": 129,
                                                      "column": 38
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 5936,
                                                    "end": 5954,
                                                    "loc": {
                                                      "start": {
                                                        "line": 129,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 129,
                                                        "column": 34
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "ThisExpression",
                                                      "start": 5936,
                                                      "end": 5940,
                                                      "loc": {
                                                        "start": {
                                                          "line": 129,
                                                          "column": 16
                                                        },
                                                        "end": {
                                                          "line": 129,
                                                          "column": 20
                                                        }
                                                      }
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 5941,
                                                      "end": 5954,
                                                      "loc": {
                                                        "start": {
                                                          "line": 129,
                                                          "column": 21
                                                        },
                                                        "end": {
                                                          "line": 129,
                                                          "column": 34
                                                        }
                                                      },
                                                      "name": "sketchObjects"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 5955,
                                                    "end": 5958,
                                                    "loc": {
                                                      "start": {
                                                        "line": 129,
                                                        "column": 35
                                                      },
                                                      "end": {
                                                        "line": 129,
                                                        "column": 38
                                                      }
                                                    },
                                                    "name": "add"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 5959,
                                                    "end": 5962,
                                                    "loc": {
                                                      "start": {
                                                        "line": 129,
                                                        "column": 39
                                                      },
                                                      "end": {
                                                        "line": 129,
                                                        "column": 42
                                                      }
                                                    },
                                                    "name": "obj"
                                                  }
                                                ]
                                              }
                                            },
                                            {
                                              "type": "ExpressionStatement",
                                              "start": 5981,
                                              "end": 6023,
                                              "loc": {
                                                "start": {
                                                  "line": 130,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 130,
                                                  "column": 58
                                                }
                                              },
                                              "expression": {
                                                "type": "CallExpression",
                                                "start": 5981,
                                                "end": 6022,
                                                "loc": {
                                                  "start": {
                                                    "line": 130,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 130,
                                                    "column": 57
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 5981,
                                                  "end": 6011,
                                                  "loc": {
                                                    "start": {
                                                      "line": 130,
                                                      "column": 16
                                                    },
                                                    "end": {
                                                      "line": 130,
                                                      "column": 46
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 5981,
                                                    "end": 5989,
                                                    "loc": {
                                                      "start": {
                                                        "line": 130,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 130,
                                                        "column": 24
                                                      }
                                                    },
                                                    "name": "Sketcher"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 5990,
                                                    "end": 6011,
                                                    "loc": {
                                                      "start": {
                                                        "line": 130,
                                                        "column": 25
                                                      },
                                                      "end": {
                                                        "line": 130,
                                                        "column": 46
                                                      }
                                                    },
                                                    "name": "registerVisualization"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 6012,
                                                    "end": 6016,
                                                    "loc": {
                                                      "start": {
                                                        "line": 130,
                                                        "column": 47
                                                      },
                                                      "end": {
                                                        "line": 130,
                                                        "column": 51
                                                      }
                                                    },
                                                    "name": "view"
                                                  },
                                                  {
                                                    "type": "Identifier",
                                                    "start": 6018,
                                                    "end": 6021,
                                                    "loc": {
                                                      "start": {
                                                        "line": 130,
                                                        "column": 53
                                                      },
                                                      "end": {
                                                        "line": 130,
                                                        "column": 56
                                                      }
                                                    },
                                                    "name": "obj"
                                                  }
                                                ]
                                              }
                                            },
                                            {
                                              "type": "ExpressionStatement",
                                              "start": 6040,
                                              "end": 6070,
                                              "loc": {
                                                "start": {
                                                  "line": 131,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 131,
                                                  "column": 46
                                                }
                                              },
                                              "expression": {
                                                "type": "CallExpression",
                                                "start": 6040,
                                                "end": 6069,
                                                "loc": {
                                                  "start": {
                                                    "line": 131,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 131,
                                                    "column": 45
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 6040,
                                                  "end": 6049,
                                                  "loc": {
                                                    "start": {
                                                      "line": 131,
                                                      "column": 16
                                                    },
                                                    "end": {
                                                      "line": 131,
                                                      "column": 25
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "ThisExpression",
                                                    "start": 6040,
                                                    "end": 6044,
                                                    "loc": {
                                                      "start": {
                                                        "line": 131,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 131,
                                                        "column": 20
                                                      }
                                                    }
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 6045,
                                                    "end": 6049,
                                                    "loc": {
                                                      "start": {
                                                        "line": 131,
                                                        "column": 21
                                                      },
                                                      "end": {
                                                        "line": 131,
                                                        "column": 25
                                                      }
                                                    },
                                                    "name": "emit"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "Literal",
                                                    "start": 6050,
                                                    "end": 6063,
                                                    "loc": {
                                                      "start": {
                                                        "line": 131,
                                                        "column": 26
                                                      },
                                                      "end": {
                                                        "line": 131,
                                                        "column": 39
                                                      }
                                                    },
                                                    "value": "SketchAdded",
                                                    "rawValue": "SketchAdded",
                                                    "raw": "'SketchAdded'"
                                                  },
                                                  {
                                                    "type": "Identifier",
                                                    "start": 6065,
                                                    "end": 6068,
                                                    "loc": {
                                                      "start": {
                                                        "line": 131,
                                                        "column": 41
                                                      },
                                                      "end": {
                                                        "line": 131,
                                                        "column": 44
                                                      }
                                                    },
                                                    "name": "obj"
                                                  }
                                                ]
                                              }
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 6100,
                                  "end": 6568,
                                  "loc": {
                                    "start": {
                                      "line": 134,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 140,
                                      "column": 13
                                    }
                                  },
                                  "test": {
                                    "type": "LogicalExpression",
                                    "start": 6104,
                                    "end": 6174,
                                    "loc": {
                                      "start": {
                                        "line": 134,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 134,
                                        "column": 86
                                      }
                                    },
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 6104,
                                      "end": 6126,
                                      "loc": {
                                        "start": {
                                          "line": 134,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 134,
                                          "column": 38
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 6104,
                                        "end": 6111,
                                        "loc": {
                                          "start": {
                                            "line": 134,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 134,
                                            "column": 23
                                          }
                                        },
                                        "name": "options"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 6112,
                                        "end": 6126,
                                        "loc": {
                                          "start": {
                                            "line": 134,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 134,
                                            "column": 38
                                          }
                                        },
                                        "name": "autoconstraint"
                                      },
                                      "computed": false
                                    },
                                    "operator": "&&",
                                    "right": {
                                      "type": "MemberExpression",
                                      "start": 6130,
                                      "end": 6174,
                                      "loc": {
                                        "start": {
                                          "line": 134,
                                          "column": 42
                                        },
                                        "end": {
                                          "line": 134,
                                          "column": 86
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 6130,
                                        "end": 6148,
                                        "loc": {
                                          "start": {
                                            "line": 134,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 134,
                                            "column": 60
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 6130,
                                          "end": 6138,
                                          "loc": {
                                            "start": {
                                              "line": 134,
                                              "column": 42
                                            },
                                            "end": {
                                              "line": 134,
                                              "column": 50
                                            }
                                          },
                                          "name": "sketcher"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 6139,
                                          "end": 6148,
                                          "loc": {
                                            "start": {
                                              "line": 134,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 134,
                                              "column": 60
                                            }
                                          },
                                          "name": "modelData"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 6149,
                                        "end": 6174,
                                        "loc": {
                                          "start": {
                                            "line": 134,
                                            "column": 61
                                          },
                                          "end": {
                                            "line": 134,
                                            "column": 86
                                          }
                                        },
                                        "name": "autoconstraintIncremental"
                                      },
                                      "computed": false
                                    }
                                  },
                                  "consequent": {
                                    "type": "BlockStatement",
                                    "start": 6176,
                                    "end": 6568,
                                    "loc": {
                                      "start": {
                                        "line": 134,
                                        "column": 88
                                      },
                                      "end": {
                                        "line": 140,
                                        "column": 13
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "VariableDeclaration",
                                        "start": 6276,
                                        "end": 6320,
                                        "loc": {
                                          "start": {
                                            "line": 136,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 136,
                                            "column": 60
                                          }
                                        },
                                        "declarations": [
                                          {
                                            "type": "VariableDeclarator",
                                            "start": 6280,
                                            "end": 6319,
                                            "loc": {
                                              "start": {
                                                "line": 136,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 136,
                                                "column": 59
                                              }
                                            },
                                            "id": {
                                              "type": "Identifier",
                                              "start": 6280,
                                              "end": 6287,
                                              "loc": {
                                                "start": {
                                                  "line": 136,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 136,
                                                  "column": 27
                                                }
                                              },
                                              "name": "autogen",
                                              "leadingComments": null
                                            },
                                            "init": {
                                              "type": "NewExpression",
                                              "start": 6290,
                                              "end": 6319,
                                              "loc": {
                                                "start": {
                                                  "line": 136,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 136,
                                                  "column": 59
                                                }
                                              },
                                              "callee": {
                                                "type": "Identifier",
                                                "start": 6294,
                                                "end": 6313,
                                                "loc": {
                                                  "start": {
                                                    "line": 136,
                                                    "column": 34
                                                  },
                                                  "end": {
                                                    "line": 136,
                                                    "column": 53
                                                  }
                                                },
                                                "name": "ConstraintGenerator"
                                              },
                                              "arguments": [
                                                {
                                                  "type": "ThisExpression",
                                                  "start": 6314,
                                                  "end": 6318,
                                                  "loc": {
                                                    "start": {
                                                      "line": 136,
                                                      "column": 54
                                                    },
                                                    "end": {
                                                      "line": 136,
                                                      "column": 58
                                                    }
                                                  }
                                                }
                                              ]
                                            },
                                            "leadingComments": null
                                          }
                                        ],
                                        "kind": "var",
                                        "leadingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": "generate implied constraints for the objects just drawn by user",
                                            "start": 6194,
                                            "end": 6259,
                                            "loc": {
                                              "start": {
                                                "line": 135,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 135,
                                                "column": 81
                                              }
                                            },
                                            "range": [
                                              6194,
                                              6259
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "VariableDeclaration",
                                        "start": 6337,
                                        "end": 6430,
                                        "loc": {
                                          "start": {
                                            "line": 137,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 137,
                                            "column": 109
                                          }
                                        },
                                        "declarations": [
                                          {
                                            "type": "VariableDeclarator",
                                            "start": 6341,
                                            "end": 6429,
                                            "loc": {
                                              "start": {
                                                "line": 137,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 137,
                                                "column": 108
                                              }
                                            },
                                            "id": {
                                              "type": "Identifier",
                                              "start": 6341,
                                              "end": 6352,
                                              "loc": {
                                                "start": {
                                                  "line": 137,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 137,
                                                  "column": 31
                                                }
                                              },
                                              "name": "constraints"
                                            },
                                            "init": {
                                              "type": "CallExpression",
                                              "start": 6355,
                                              "end": 6429,
                                              "loc": {
                                                "start": {
                                                  "line": 137,
                                                  "column": 34
                                                },
                                                "end": {
                                                  "line": 137,
                                                  "column": 108
                                                }
                                              },
                                              "callee": {
                                                "type": "MemberExpression",
                                                "start": 6355,
                                                "end": 6389,
                                                "loc": {
                                                  "start": {
                                                    "line": 137,
                                                    "column": 34
                                                  },
                                                  "end": {
                                                    "line": 137,
                                                    "column": 68
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 6355,
                                                  "end": 6362,
                                                  "loc": {
                                                    "start": {
                                                      "line": 137,
                                                      "column": 34
                                                    },
                                                    "end": {
                                                      "line": 137,
                                                      "column": 41
                                                    }
                                                  },
                                                  "name": "autogen"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 6363,
                                                  "end": 6389,
                                                  "loc": {
                                                    "start": {
                                                      "line": 137,
                                                      "column": 42
                                                    },
                                                    "end": {
                                                      "line": 137,
                                                      "column": 68
                                                    }
                                                  },
                                                  "name": "generateImpliedConstraints"
                                                },
                                                "computed": false
                                              },
                                              "arguments": [
                                                {
                                                  "type": "CallExpression",
                                                  "start": 6390,
                                                  "end": 6428,
                                                  "loc": {
                                                    "start": {
                                                      "line": 137,
                                                      "column": 69
                                                    },
                                                    "end": {
                                                      "line": 137,
                                                      "column": 107
                                                    }
                                                  },
                                                  "callee": {
                                                    "type": "MemberExpression",
                                                    "start": 6390,
                                                    "end": 6419,
                                                    "loc": {
                                                      "start": {
                                                        "line": 137,
                                                        "column": 69
                                                      },
                                                      "end": {
                                                        "line": 137,
                                                        "column": 98
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 6390,
                                                      "end": 6396,
                                                      "loc": {
                                                        "start": {
                                                          "line": 137,
                                                          "column": 69
                                                        },
                                                        "end": {
                                                          "line": 137,
                                                          "column": 75
                                                        }
                                                      },
                                                      "name": "Sketch"
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 6397,
                                                      "end": 6419,
                                                      "loc": {
                                                        "start": {
                                                          "line": 137,
                                                          "column": 76
                                                        },
                                                        "end": {
                                                          "line": 137,
                                                          "column": 98
                                                        }
                                                      },
                                                      "name": "ForObjectsWithChildren"
                                                    },
                                                    "computed": false
                                                  },
                                                  "arguments": [
                                                    {
                                                      "type": "Identifier",
                                                      "start": 6420,
                                                      "end": 6427,
                                                      "loc": {
                                                        "start": {
                                                          "line": 137,
                                                          "column": 99
                                                        },
                                                        "end": {
                                                          "line": 137,
                                                          "column": 106
                                                        }
                                                      },
                                                      "name": "objects"
                                                    }
                                                  ]
                                                }
                                              ]
                                            }
                                          }
                                        ],
                                        "kind": "var"
                                      },
                                      {
                                        "type": "IfStatement",
                                        "start": 6447,
                                        "end": 6554,
                                        "loc": {
                                          "start": {
                                            "line": 138,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 139,
                                            "column": 79
                                          }
                                        },
                                        "test": {
                                          "type": "BinaryExpression",
                                          "start": 6451,
                                          "end": 6473,
                                          "loc": {
                                            "start": {
                                              "line": 138,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 138,
                                              "column": 42
                                            }
                                          },
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 6451,
                                            "end": 6469,
                                            "loc": {
                                              "start": {
                                                "line": 138,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 138,
                                                "column": 38
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 6451,
                                              "end": 6462,
                                              "loc": {
                                                "start": {
                                                  "line": 138,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 138,
                                                  "column": 31
                                                }
                                              },
                                              "name": "constraints"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 6463,
                                              "end": 6469,
                                              "loc": {
                                                "start": {
                                                  "line": 138,
                                                  "column": 32
                                                },
                                                "end": {
                                                  "line": 138,
                                                  "column": 38
                                                }
                                              },
                                              "name": "length"
                                            },
                                            "computed": false
                                          },
                                          "operator": ">",
                                          "right": {
                                            "type": "Literal",
                                            "start": 6472,
                                            "end": 6473,
                                            "loc": {
                                              "start": {
                                                "line": 138,
                                                "column": 41
                                              },
                                              "end": {
                                                "line": 138,
                                                "column": 42
                                              }
                                            },
                                            "value": 0,
                                            "rawValue": 0,
                                            "raw": "0"
                                          }
                                        },
                                        "consequent": {
                                          "type": "ReturnStatement",
                                          "start": 6495,
                                          "end": 6554,
                                          "loc": {
                                            "start": {
                                              "line": 139,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 139,
                                              "column": 79
                                            }
                                          },
                                          "argument": {
                                            "type": "CallExpression",
                                            "start": 6502,
                                            "end": 6553,
                                            "loc": {
                                              "start": {
                                                "line": 139,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 139,
                                                "column": 78
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 6502,
                                              "end": 6518,
                                              "loc": {
                                                "start": {
                                                  "line": 139,
                                                  "column": 27
                                                },
                                                "end": {
                                                  "line": 139,
                                                  "column": 43
                                                }
                                              },
                                              "object": {
                                                "type": "ThisExpression",
                                                "start": 6502,
                                                "end": 6506,
                                                "loc": {
                                                  "start": {
                                                    "line": 139,
                                                    "column": 27
                                                  },
                                                  "end": {
                                                    "line": 139,
                                                    "column": 31
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 6507,
                                                "end": 6518,
                                                "loc": {
                                                  "start": {
                                                    "line": 139,
                                                    "column": 32
                                                  },
                                                  "end": {
                                                    "line": 139,
                                                    "column": 43
                                                  }
                                                },
                                                "name": "addToSketch"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 6519,
                                                "end": 6530,
                                                "loc": {
                                                  "start": {
                                                    "line": 139,
                                                    "column": 44
                                                  },
                                                  "end": {
                                                    "line": 139,
                                                    "column": 55
                                                  }
                                                },
                                                "name": "constraints"
                                              },
                                              {
                                                "type": "ObjectExpression",
                                                "start": 6532,
                                                "end": 6552,
                                                "loc": {
                                                  "start": {
                                                    "line": 139,
                                                    "column": 57
                                                  },
                                                  "end": {
                                                    "line": 139,
                                                    "column": 77
                                                  }
                                                },
                                                "properties": [
                                                  {
                                                    "type": "Property",
                                                    "start": 6533,
                                                    "end": 6551,
                                                    "loc": {
                                                      "start": {
                                                        "line": 139,
                                                        "column": 58
                                                      },
                                                      "end": {
                                                        "line": 139,
                                                        "column": 76
                                                      }
                                                    },
                                                    "method": false,
                                                    "shorthand": false,
                                                    "computed": false,
                                                    "key": {
                                                      "type": "Identifier",
                                                      "start": 6533,
                                                      "end": 6545,
                                                      "loc": {
                                                        "start": {
                                                          "line": 139,
                                                          "column": 58
                                                        },
                                                        "end": {
                                                          "line": 139,
                                                          "column": 70
                                                        }
                                                      },
                                                      "name": "updateSketch"
                                                    },
                                                    "value": {
                                                      "type": "Literal",
                                                      "start": 6547,
                                                      "end": 6551,
                                                      "loc": {
                                                        "start": {
                                                          "line": 139,
                                                          "column": 72
                                                        },
                                                        "end": {
                                                          "line": 139,
                                                          "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": 5676,
                          "end": 5770,
                          "loc": {
                            "start": {
                              "line": 123,
                              "column": 43
                            },
                            "end": {
                              "line": 123,
                              "column": 137
                            }
                          },
                          "range": [
                            5676,
                            5770
                          ]
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " add objects to the sketch on the server and, if successful, on the client",
                          "start": 6589,
                          "end": 6665,
                          "loc": {
                            "start": {
                              "line": 143,
                              "column": 8
                            },
                            "end": {
                              "line": 143,
                              "column": 84
                            }
                          },
                          "range": [
                            6589,
                            6665
                          ]
                        }
                      ]
                    },
                    {
                      "type": "IfStatement",
                      "start": 6674,
                      "end": 6947,
                      "loc": {
                        "start": {
                          "line": 144,
                          "column": 8
                        },
                        "end": {
                          "line": 147,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "MemberExpression",
                        "start": 6678,
                        "end": 6694,
                        "loc": {
                          "start": {
                            "line": 144,
                            "column": 12
                          },
                          "end": {
                            "line": 144,
                            "column": 28
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 6678,
                          "end": 6685,
                          "loc": {
                            "start": {
                              "line": 144,
                              "column": 12
                            },
                            "end": {
                              "line": 144,
                              "column": 19
                            }
                          },
                          "name": "options",
                          "leadingComments": null
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 6686,
                          "end": 6694,
                          "loc": {
                            "start": {
                              "line": 144,
                              "column": 20
                            },
                            "end": {
                              "line": 144,
                              "column": 28
                            }
                          },
                          "name": "onServer"
                        },
                        "computed": false,
                        "leadingComments": null
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 6696,
                        "end": 6947,
                        "loc": {
                          "start": {
                            "line": 144,
                            "column": 30
                          },
                          "end": {
                            "line": 147,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 6710,
                            "end": 6780,
                            "loc": {
                              "start": {
                                "line": 145,
                                "column": 12
                              },
                              "end": {
                                "line": 145,
                                "column": 82
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 6714,
                                "end": 6779,
                                "loc": {
                                  "start": {
                                    "line": 145,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 145,
                                    "column": 81
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 6714,
                                  "end": 6722,
                                  "loc": {
                                    "start": {
                                      "line": 145,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 145,
                                      "column": 24
                                    }
                                  },
                                  "name": "commands"
                                },
                                "init": {
                                  "type": "CallExpression",
                                  "start": 6725,
                                  "end": 6779,
                                  "loc": {
                                    "start": {
                                      "line": 145,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 145,
                                      "column": 81
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 6725,
                                    "end": 6736,
                                    "loc": {
                                      "start": {
                                        "line": 145,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 145,
                                        "column": 38
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 6725,
                                      "end": 6732,
                                      "loc": {
                                        "start": {
                                          "line": 145,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 145,
                                          "column": 34
                                        }
                                      },
                                      "name": "objects"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 6733,
                                      "end": 6736,
                                      "loc": {
                                        "start": {
                                          "line": 145,
                                          "column": 35
                                        },
                                        "end": {
                                          "line": 145,
                                          "column": 38
                                        }
                                      },
                                      "name": "map"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "ArrowFunctionExpression",
                                      "start": 6737,
                                      "end": 6778,
                                      "loc": {
                                        "start": {
                                          "line": 145,
                                          "column": 39
                                        },
                                        "end": {
                                          "line": 145,
                                          "column": 80
                                        }
                                      },
                                      "id": null,
                                      "generator": false,
                                      "expression": true,
                                      "async": false,
                                      "params": [
                                        {
                                          "type": "Identifier",
                                          "start": 6737,
                                          "end": 6743,
                                          "loc": {
                                            "start": {
                                              "line": 145,
                                              "column": 39
                                            },
                                            "end": {
                                              "line": 145,
                                              "column": 45
                                            }
                                          },
                                          "name": "object"
                                        }
                                      ],
                                      "body": {
                                        "type": "CallExpression",
                                        "start": 6747,
                                        "end": 6778,
                                        "loc": {
                                          "start": {
                                            "line": 145,
                                            "column": 49
                                          },
                                          "end": {
                                            "line": 145,
                                            "column": 80
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 6747,
                                          "end": 6772,
                                          "loc": {
                                            "start": {
                                              "line": 145,
                                              "column": 49
                                            },
                                            "end": {
                                              "line": 145,
                                              "column": 74
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 6747,
                                            "end": 6753,
                                            "loc": {
                                              "start": {
                                                "line": 145,
                                                "column": 49
                                              },
                                              "end": {
                                                "line": 145,
                                                "column": 55
                                              }
                                            },
                                            "name": "object"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 6754,
                                            "end": 6772,
                                            "loc": {
                                              "start": {
                                                "line": 145,
                                                "column": 56
                                              },
                                              "end": {
                                                "line": 145,
                                                "column": 74
                                              }
                                            },
                                            "name": "prepareAddOnServer"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "ThisExpression",
                                            "start": 6773,
                                            "end": 6777,
                                            "loc": {
                                              "start": {
                                                "line": 145,
                                                "column": 75
                                              },
                                              "end": {
                                                "line": 145,
                                                "column": 79
                                              }
                                            }
                                          }
                                        ]
                                      }
                                    }
                                  ]
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 6793,
                            "end": 6937,
                            "loc": {
                              "start": {
                                "line": 146,
                                "column": 12
                              },
                              "end": {
                                "line": 146,
                                "column": 156
                              }
                            },
                            "argument": {
                              "type": "CallExpression",
                              "start": 6800,
                              "end": 6936,
                              "loc": {
                                "start": {
                                  "line": 146,
                                  "column": 19
                                },
                                "end": {
                                  "line": 146,
                                  "column": 155
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 6800,
                                "end": 6923,
                                "loc": {
                                  "start": {
                                    "line": 146,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 146,
                                    "column": 142
                                  }
                                },
                                "object": {
                                  "type": "ConditionalExpression",
                                  "start": 6801,
                                  "end": 6917,
                                  "loc": {
                                    "start": {
                                      "line": 146,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 146,
                                      "column": 136
                                    }
                                  },
                                  "test": {
                                    "type": "MemberExpression",
                                    "start": 6801,
                                    "end": 6821,
                                    "loc": {
                                      "start": {
                                        "line": 146,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 146,
                                        "column": 40
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 6801,
                                      "end": 6808,
                                      "loc": {
                                        "start": {
                                          "line": 146,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 146,
                                          "column": 27
                                        }
                                      },
                                      "name": "options"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 6809,
                                      "end": 6821,
                                      "loc": {
                                        "start": {
                                          "line": 146,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 146,
                                          "column": 40
                                        }
                                      },
                                      "name": "updateSketch"
                                    },
                                    "computed": false
                                  },
                                  "consequent": {
                                    "type": "CallExpression",
                                    "start": 6824,
                                    "end": 6872,
                                    "loc": {
                                      "start": {
                                        "line": 146,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 146,
                                        "column": 91
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 6824,
                                      "end": 6845,
                                      "loc": {
                                        "start": {
                                          "line": 146,
                                          "column": 43
                                        },
                                        "end": {
                                          "line": 146,
                                          "column": 64
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 6824,
                                        "end": 6828,
                                        "loc": {
                                          "start": {
                                            "line": 146,
                                            "column": 43
                                          },
                                          "end": {
                                            "line": 146,
                                            "column": 47
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 6829,
                                        "end": 6845,
                                        "loc": {
                                          "start": {
                                            "line": 146,
                                            "column": 48
                                          },
                                          "end": {
                                            "line": 146,
                                            "column": 64
                                          }
                                        },
                                        "name": "updateFromServer"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "MemberExpression",
                                        "start": 6846,
                                        "end": 6861,
                                        "loc": {
                                          "start": {
                                            "line": 146,
                                            "column": 65
                                          },
                                          "end": {
                                            "line": 146,
                                            "column": 80
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 6846,
                                          "end": 6854,
                                          "loc": {
                                            "start": {
                                              "line": 146,
                                              "column": 65
                                            },
                                            "end": {
                                              "line": 146,
                                              "column": 73
                                            }
                                          },
                                          "name": "sketcher"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 6855,
                                          "end": 6861,
                                          "loc": {
                                            "start": {
                                              "line": 146,
                                              "column": 74
                                            },
                                            "end": {
                                              "line": 146,
                                              "column": 80
                                            }
                                          },
                                          "name": "server"
                                        },
                                        "computed": false
                                      },
                                      {
                                        "type": "Identifier",
                                        "start": 6863,
                                        "end": 6871,
                                        "loc": {
                                          "start": {
                                            "line": 146,
                                            "column": 82
                                          },
                                          "end": {
                                            "line": 146,
                                            "column": 90
                                          }
                                        },
                                        "name": "commands"
                                      }
                                    ]
                                  },
                                  "alternate": {
                                    "type": "CallExpression",
                                    "start": 6875,
                                    "end": 6917,
                                    "loc": {
                                      "start": {
                                        "line": 146,
                                        "column": 94
                                      },
                                      "end": {
                                        "line": 146,
                                        "column": 136
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 6875,
                                      "end": 6890,
                                      "loc": {
                                        "start": {
                                          "line": 146,
                                          "column": 94
                                        },
                                        "end": {
                                          "line": 146,
                                          "column": 109
                                        }
                                      },
                                      "name": "executePrepared"
                                    },
                                    "arguments": [
                                      {
                                        "type": "MemberExpression",
                                        "start": 6891,
                                        "end": 6906,
                                        "loc": {
                                          "start": {
                                            "line": 146,
                                            "column": 110
                                          },
                                          "end": {
                                            "line": 146,
                                            "column": 125
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 6891,
                                          "end": 6899,
                                          "loc": {
                                            "start": {
                                              "line": 146,
                                              "column": 110
                                            },
                                            "end": {
                                              "line": 146,
                                              "column": 118
                                            }
                                          },
                                          "name": "sketcher"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 6900,
                                          "end": 6906,
                                          "loc": {
                                            "start": {
                                              "line": 146,
                                              "column": 119
                                            },
                                            "end": {
                                              "line": 146,
                                              "column": 125
                                            }
                                          },
                                          "name": "server"
                                        },
                                        "computed": false
                                      },
                                      {
                                        "type": "Identifier",
                                        "start": 6908,
                                        "end": 6916,
                                        "loc": {
                                          "start": {
                                            "line": 146,
                                            "column": 127
                                          },
                                          "end": {
                                            "line": 146,
                                            "column": 135
                                          }
                                        },
                                        "name": "commands"
                                      }
                                    ]
                                  },
                                  "parenthesizedExpression": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 6919,
                                  "end": 6923,
                                  "loc": {
                                    "start": {
                                      "line": 146,
                                      "column": 138
                                    },
                                    "end": {
                                      "line": 146,
                                      "column": 142
                                    }
                                  },
                                  "name": "then"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 6924,
                                  "end": 6935,
                                  "loc": {
                                    "start": {
                                      "line": 146,
                                      "column": 143
                                    },
                                    "end": {
                                      "line": 146,
                                      "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": 6589,
                          "end": 6665,
                          "loc": {
                            "start": {
                              "line": 143,
                              "column": 8
                            },
                            "end": {
                              "line": 143,
                              "column": 84
                            }
                          },
                          "range": [
                            6589,
                            6665
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 6957,
                      "end": 6995,
                      "loc": {
                        "start": {
                          "line": 149,
                          "column": 8
                        },
                        "end": {
                          "line": 149,
                          "column": 46
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 6964,
                        "end": 6994,
                        "loc": {
                          "start": {
                            "line": 149,
                            "column": 15
                          },
                          "end": {
                            "line": 149,
                            "column": 45
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 6964,
                          "end": 6979,
                          "loc": {
                            "start": {
                              "line": 149,
                              "column": 15
                            },
                            "end": {
                              "line": 149,
                              "column": 30
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 6964,
                            "end": 6971,
                            "loc": {
                              "start": {
                                "line": 149,
                                "column": 15
                              },
                              "end": {
                                "line": 149,
                                "column": 22
                              }
                            },
                            "name": "Promise"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6972,
                            "end": 6979,
                            "loc": {
                              "start": {
                                "line": 149,
                                "column": 23
                              },
                              "end": {
                                "line": 149,
                                "column": 30
                              }
                            },
                            "name": "resolve"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 6980,
                            "end": 6993,
                            "loc": {
                              "start": {
                                "line": 149,
                                "column": 31
                              },
                              "end": {
                                "line": 149,
                                "column": 44
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 6980,
                              "end": 6991,
                              "loc": {
                                "start": {
                                  "line": 149,
                                  "column": 31
                                },
                                "end": {
                                  "line": 149,
                                  "column": 42
                                }
                              },
                              "name": "afterServer"
                            },
                            "arguments": []
                          }
                        ]
                      }
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " Part.SketchSet.Sketch",
                  "start": 4430,
                  "end": 4454,
                  "loc": {
                    "start": {
                      "line": 99,
                      "column": 35
                    },
                    "end": {
                      "line": 99,
                      "column": 59
                    }
                  },
                  "range": [
                    4430,
                    4454
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " Physically add objects to the sketch (in contrast to addAuxObject)",
                  "start": 4466,
                  "end": 4535,
                  "loc": {
                    "start": {
                      "line": 102,
                      "column": 4
                    },
                    "end": {
                      "line": 102,
                      "column": 73
                    }
                  },
                  "range": [
                    4466,
                    4535
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " If some objects were previously added with addAuxObject, automatically remove them from aux objects",
                  "start": 4540,
                  "end": 4642,
                  "loc": {
                    "start": {
                      "line": 103,
                      "column": 4
                    },
                    "end": {
                      "line": 103,
                      "column": 106
                    }
                  },
                  "range": [
                    4540,
                    4642
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " possible options:",
                  "start": 4647,
                  "end": 4667,
                  "loc": {
                    "start": {
                      "line": 104,
                      "column": 4
                    },
                    "end": {
                      "line": 104,
                      "column": 24
                    }
                  },
                  "range": [
                    4647,
                    4667
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": "   onServer (default: true) - whether to send commands to the server.",
                  "start": 4672,
                  "end": 4743,
                  "loc": {
                    "start": {
                      "line": 105,
                      "column": 4
                    },
                    "end": {
                      "line": 105,
                      "column": 75
                    }
                  },
                  "range": [
                    4672,
                    4743
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": "   onClient (default: true) - whether to add objects to children",
                  "start": 4748,
                  "end": 4814,
                  "loc": {
                    "start": {
                      "line": 106,
                      "column": 4
                    },
                    "end": {
                      "line": 106,
                      "column": 70
                    }
                  },
                  "range": [
                    4748,
                    4814
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": "   autoconstraint (default: false) - if true, then implied constraints are generated if neccessary.",
                  "start": 4819,
                  "end": 4920,
                  "loc": {
                    "start": {
                      "line": 107,
                      "column": 4
                    },
                    "end": {
                      "line": 107,
                      "column": 105
                    }
                  },
                  "range": [
                    4819,
                    4920
                  ]
                },
                {
                  "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": 4925,
                  "end": 5070,
                  "loc": {
                    "start": {
                      "line": 108,
                      "column": 4
                    },
                    "end": {
                      "line": 108,
                      "column": 149
                    }
                  },
                  "range": [
                    4925,
                    5070
                  ]
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " Remove objects previously added with addToSketch",
                  "start": 7007,
                  "end": 7058,
                  "loc": {
                    "start": {
                      "line": 152,
                      "column": 4
                    },
                    "end": {
                      "line": 152,
                      "column": 55
                    }
                  },
                  "range": [
                    7007,
                    7058
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 7063,
              "end": 8733,
              "loc": {
                "start": {
                  "line": 153,
                  "column": 4
                },
                "end": {
                  "line": 188,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 7063,
                "end": 7079,
                "loc": {
                  "start": {
                    "line": 153,
                    "column": 4
                  },
                  "end": {
                    "line": 153,
                    "column": 20
                  }
                },
                "name": "removeFromSketch",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 7079,
                "end": 8733,
                "loc": {
                  "start": {
                    "line": 153,
                    "column": 20
                  },
                  "end": {
                    "line": 188,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 7080,
                    "end": 7087,
                    "loc": {
                      "start": {
                        "line": 153,
                        "column": 21
                      },
                      "end": {
                        "line": 153,
                        "column": 28
                      }
                    },
                    "name": "objects"
                  },
                  {
                    "type": "AssignmentPattern",
                    "start": 7089,
                    "end": 7101,
                    "loc": {
                      "start": {
                        "line": 153,
                        "column": 30
                      },
                      "end": {
                        "line": 153,
                        "column": 42
                      }
                    },
                    "operator": "=",
                    "left": {
                      "type": "Identifier",
                      "start": 7089,
                      "end": 7096,
                      "loc": {
                        "start": {
                          "line": 153,
                          "column": 30
                        },
                        "end": {
                          "line": 153,
                          "column": 37
                        }
                      },
                      "name": "options"
                    },
                    "right": {
                      "type": "ObjectExpression",
                      "start": 7099,
                      "end": 7101,
                      "loc": {
                        "start": {
                          "line": 153,
                          "column": 40
                        },
                        "end": {
                          "line": 153,
                          "column": 42
                        }
                      },
                      "properties": []
                    }
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 7103,
                  "end": 8733,
                  "loc": {
                    "start": {
                      "line": 153,
                      "column": 44
                    },
                    "end": {
                      "line": 188,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 7113,
                      "end": 7173,
                      "loc": {
                        "start": {
                          "line": 154,
                          "column": 8
                        },
                        "end": {
                          "line": 154,
                          "column": 68
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 7117,
                        "end": 7147,
                        "loc": {
                          "start": {
                            "line": 154,
                            "column": 12
                          },
                          "end": {
                            "line": 154,
                            "column": 42
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 7117,
                          "end": 7133,
                          "loc": {
                            "start": {
                              "line": 154,
                              "column": 12
                            },
                            "end": {
                              "line": 154,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 7117,
                            "end": 7124,
                            "loc": {
                              "start": {
                                "line": 154,
                                "column": 12
                              },
                              "end": {
                                "line": 154,
                                "column": 19
                              }
                            },
                            "name": "options"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7125,
                            "end": 7133,
                            "loc": {
                              "start": {
                                "line": 154,
                                "column": 20
                              },
                              "end": {
                                "line": 154,
                                "column": 28
                              }
                            },
                            "name": "onServer"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Identifier",
                          "start": 7138,
                          "end": 7147,
                          "loc": {
                            "start": {
                              "line": 154,
                              "column": 33
                            },
                            "end": {
                              "line": 154,
                              "column": 42
                            }
                          },
                          "name": "undefined"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 7149,
                        "end": 7173,
                        "loc": {
                          "start": {
                            "line": 154,
                            "column": 44
                          },
                          "end": {
                            "line": 154,
                            "column": 68
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 7149,
                          "end": 7172,
                          "loc": {
                            "start": {
                              "line": 154,
                              "column": 44
                            },
                            "end": {
                              "line": 154,
                              "column": 67
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 7149,
                            "end": 7165,
                            "loc": {
                              "start": {
                                "line": 154,
                                "column": 44
                              },
                              "end": {
                                "line": 154,
                                "column": 60
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 7149,
                              "end": 7156,
                              "loc": {
                                "start": {
                                  "line": 154,
                                  "column": 44
                                },
                                "end": {
                                  "line": 154,
                                  "column": 51
                                }
                              },
                              "name": "options"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7157,
                              "end": 7165,
                              "loc": {
                                "start": {
                                  "line": 154,
                                  "column": 52
                                },
                                "end": {
                                  "line": 154,
                                  "column": 60
                                }
                              },
                              "name": "onServer"
                            },
                            "computed": false
                          },
                          "right": {
                            "type": "Literal",
                            "start": 7168,
                            "end": 7172,
                            "loc": {
                              "start": {
                                "line": 154,
                                "column": 63
                              },
                              "end": {
                                "line": 154,
                                "column": 67
                              }
                            },
                            "value": true,
                            "rawValue": true,
                            "raw": "true"
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 7182,
                      "end": 7242,
                      "loc": {
                        "start": {
                          "line": 155,
                          "column": 8
                        },
                        "end": {
                          "line": 155,
                          "column": 68
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 7186,
                        "end": 7216,
                        "loc": {
                          "start": {
                            "line": 155,
                            "column": 12
                          },
                          "end": {
                            "line": 155,
                            "column": 42
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 7186,
                          "end": 7202,
                          "loc": {
                            "start": {
                              "line": 155,
                              "column": 12
                            },
                            "end": {
                              "line": 155,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 7186,
                            "end": 7193,
                            "loc": {
                              "start": {
                                "line": 155,
                                "column": 12
                              },
                              "end": {
                                "line": 155,
                                "column": 19
                              }
                            },
                            "name": "options"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7194,
                            "end": 7202,
                            "loc": {
                              "start": {
                                "line": 155,
                                "column": 20
                              },
                              "end": {
                                "line": 155,
                                "column": 28
                              }
                            },
                            "name": "onClient"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Identifier",
                          "start": 7207,
                          "end": 7216,
                          "loc": {
                            "start": {
                              "line": 155,
                              "column": 33
                            },
                            "end": {
                              "line": 155,
                              "column": 42
                            }
                          },
                          "name": "undefined"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 7218,
                        "end": 7242,
                        "loc": {
                          "start": {
                            "line": 155,
                            "column": 44
                          },
                          "end": {
                            "line": 155,
                            "column": 68
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 7218,
                          "end": 7241,
                          "loc": {
                            "start": {
                              "line": 155,
                              "column": 44
                            },
                            "end": {
                              "line": 155,
                              "column": 67
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 7218,
                            "end": 7234,
                            "loc": {
                              "start": {
                                "line": 155,
                                "column": 44
                              },
                              "end": {
                                "line": 155,
                                "column": 60
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 7218,
                              "end": 7225,
                              "loc": {
                                "start": {
                                  "line": 155,
                                  "column": 44
                                },
                                "end": {
                                  "line": 155,
                                  "column": 51
                                }
                              },
                              "name": "options"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7226,
                              "end": 7234,
                              "loc": {
                                "start": {
                                  "line": 155,
                                  "column": 52
                                },
                                "end": {
                                  "line": 155,
                                  "column": 60
                                }
                              },
                              "name": "onClient"
                            },
                            "computed": false
                          },
                          "right": {
                            "type": "Literal",
                            "start": 7237,
                            "end": 7241,
                            "loc": {
                              "start": {
                                "line": 155,
                                "column": 63
                              },
                              "end": {
                                "line": 155,
                                "column": 67
                              }
                            },
                            "value": true,
                            "rawValue": true,
                            "raw": "true"
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 7251,
                      "end": 7320,
                      "loc": {
                        "start": {
                          "line": 156,
                          "column": 8
                        },
                        "end": {
                          "line": 156,
                          "column": 77
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 7255,
                        "end": 7289,
                        "loc": {
                          "start": {
                            "line": 156,
                            "column": 12
                          },
                          "end": {
                            "line": 156,
                            "column": 46
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 7255,
                          "end": 7275,
                          "loc": {
                            "start": {
                              "line": 156,
                              "column": 12
                            },
                            "end": {
                              "line": 156,
                              "column": 32
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 7255,
                            "end": 7262,
                            "loc": {
                              "start": {
                                "line": 156,
                                "column": 12
                              },
                              "end": {
                                "line": 156,
                                "column": 19
                              }
                            },
                            "name": "options"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7263,
                            "end": 7275,
                            "loc": {
                              "start": {
                                "line": 156,
                                "column": 20
                              },
                              "end": {
                                "line": 156,
                                "column": 32
                              }
                            },
                            "name": "updateSketch"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Identifier",
                          "start": 7280,
                          "end": 7289,
                          "loc": {
                            "start": {
                              "line": 156,
                              "column": 37
                            },
                            "end": {
                              "line": 156,
                              "column": 46
                            }
                          },
                          "name": "undefined"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 7291,
                        "end": 7320,
                        "loc": {
                          "start": {
                            "line": 156,
                            "column": 48
                          },
                          "end": {
                            "line": 156,
                            "column": 77
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 7291,
                          "end": 7319,
                          "loc": {
                            "start": {
                              "line": 156,
                              "column": 48
                            },
                            "end": {
                              "line": 156,
                              "column": 76
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 7291,
                            "end": 7311,
                            "loc": {
                              "start": {
                                "line": 156,
                                "column": 48
                              },
                              "end": {
                                "line": 156,
                                "column": 68
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 7291,
                              "end": 7298,
                              "loc": {
                                "start": {
                                  "line": 156,
                                  "column": 48
                                },
                                "end": {
                                  "line": 156,
                                  "column": 55
                                }
                              },
                              "name": "options"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7299,
                              "end": 7311,
                              "loc": {
                                "start": {
                                  "line": 156,
                                  "column": 56
                                },
                                "end": {
                                  "line": 156,
                                  "column": 68
                                }
                              },
                              "name": "updateSketch"
                            },
                            "computed": false
                          },
                          "right": {
                            "type": "Literal",
                            "start": 7314,
                            "end": 7319,
                            "loc": {
                              "start": {
                                "line": 156,
                                "column": 71
                              },
                              "end": {
                                "line": 156,
                                "column": 76
                              }
                            },
                            "value": false,
                            "rawValue": false,
                            "raw": "false"
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 7330,
                      "end": 7359,
                      "loc": {
                        "start": {
                          "line": 158,
                          "column": 8
                        },
                        "end": {
                          "line": 158,
                          "column": 37
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 7330,
                        "end": 7358,
                        "loc": {
                          "start": {
                            "line": 158,
                            "column": 8
                          },
                          "end": {
                            "line": 158,
                            "column": 36
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 7330,
                          "end": 7337,
                          "loc": {
                            "start": {
                              "line": 158,
                              "column": 8
                            },
                            "end": {
                              "line": 158,
                              "column": 15
                            }
                          },
                          "name": "objects"
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 7340,
                          "end": 7358,
                          "loc": {
                            "start": {
                              "line": 158,
                              "column": 18
                            },
                            "end": {
                              "line": 158,
                              "column": 36
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 7340,
                            "end": 7349,
                            "loc": {
                              "start": {
                                "line": 158,
                                "column": 18
                              },
                              "end": {
                                "line": 158,
                                "column": 27
                              }
                            },
                            "object": {
                              "type": "ArrayExpression",
                              "start": 7340,
                              "end": 7342,
                              "loc": {
                                "start": {
                                  "line": 158,
                                  "column": 18
                                },
                                "end": {
                                  "line": 158,
                                  "column": 20
                                }
                              },
                              "elements": []
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7343,
                              "end": 7349,
                              "loc": {
                                "start": {
                                  "line": 158,
                                  "column": 21
                                },
                                "end": {
                                  "line": 158,
                                  "column": 27
                                }
                              },
                              "name": "concat"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 7350,
                              "end": 7357,
                              "loc": {
                                "start": {
                                  "line": 158,
                                  "column": 28
                                },
                                "end": {
                                  "line": 158,
                                  "column": 35
                                }
                              },
                              "name": "objects"
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 7368,
                      "end": 7397,
                      "loc": {
                        "start": {
                          "line": 159,
                          "column": 8
                        },
                        "end": {
                          "line": 159,
                          "column": 37
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 7372,
                          "end": 7396,
                          "loc": {
                            "start": {
                              "line": 159,
                              "column": 12
                            },
                            "end": {
                              "line": 159,
                              "column": 36
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 7372,
                            "end": 7380,
                            "loc": {
                              "start": {
                                "line": 159,
                                "column": 12
                              },
                              "end": {
                                "line": 159,
                                "column": 20
                              }
                            },
                            "name": "sketcher"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 7383,
                            "end": 7396,
                            "loc": {
                              "start": {
                                "line": 159,
                                "column": 23
                              },
                              "end": {
                                "line": 159,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 7383,
                              "end": 7387,
                              "loc": {
                                "start": {
                                  "line": 159,
                                  "column": 23
                                },
                                "end": {
                                  "line": 159,
                                  "column": 27
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7388,
                              "end": 7396,
                              "loc": {
                                "start": {
                                  "line": 159,
                                  "column": 28
                                },
                                "end": {
                                  "line": 159,
                                  "column": 36
                                }
                              },
                              "name": "sketcher"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 7406,
                      "end": 7439,
                      "loc": {
                        "start": {
                          "line": 160,
                          "column": 8
                        },
                        "end": {
                          "line": 160,
                          "column": 41
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 7410,
                          "end": 7438,
                          "loc": {
                            "start": {
                              "line": 160,
                              "column": 12
                            },
                            "end": {
                              "line": 160,
                              "column": 40
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 7410,
                            "end": 7414,
                            "loc": {
                              "start": {
                                "line": 160,
                                "column": 12
                              },
                              "end": {
                                "line": 160,
                                "column": 16
                              }
                            },
                            "name": "view"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 7417,
                            "end": 7438,
                            "loc": {
                              "start": {
                                "line": 160,
                                "column": 19
                              },
                              "end": {
                                "line": 160,
                                "column": 40
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 7417,
                              "end": 7425,
                              "loc": {
                                "start": {
                                  "line": 160,
                                  "column": 19
                                },
                                "end": {
                                  "line": 160,
                                  "column": 27
                                }
                              },
                              "name": "sketcher"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7426,
                              "end": 7438,
                              "loc": {
                                "start": {
                                  "line": 160,
                                  "column": 28
                                },
                                "end": {
                                  "line": 160,
                                  "column": 40
                                }
                              },
                              "name": "__parentView"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var",
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "add related constraints for removal (before objects)",
                          "start": 7449,
                          "end": 7503,
                          "loc": {
                            "start": {
                              "line": 162,
                              "column": 8
                            },
                            "end": {
                              "line": 162,
                              "column": 62
                            }
                          },
                          "range": [
                            7449,
                            7503
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 7512,
                      "end": 7567,
                      "loc": {
                        "start": {
                          "line": 163,
                          "column": 8
                        },
                        "end": {
                          "line": 163,
                          "column": 63
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 7516,
                          "end": 7566,
                          "loc": {
                            "start": {
                              "line": 163,
                              "column": 12
                            },
                            "end": {
                              "line": 163,
                              "column": 62
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 7516,
                            "end": 7525,
                            "loc": {
                              "start": {
                                "line": 163,
                                "column": 12
                              },
                              "end": {
                                "line": 163,
                                "column": 21
                              }
                            },
                            "name": "objectsCh",
                            "leadingComments": null
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 7528,
                            "end": 7566,
                            "loc": {
                              "start": {
                                "line": 163,
                                "column": 24
                              },
                              "end": {
                                "line": 163,
                                "column": 62
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 7528,
                              "end": 7557,
                              "loc": {
                                "start": {
                                  "line": 163,
                                  "column": 24
                                },
                                "end": {
                                  "line": 163,
                                  "column": 53
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 7528,
                                "end": 7534,
                                "loc": {
                                  "start": {
                                    "line": 163,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 163,
                                    "column": 30
                                  }
                                },
                                "name": "Sketch"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 7535,
                                "end": 7557,
                                "loc": {
                                  "start": {
                                    "line": 163,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 163,
                                    "column": 53
                                  }
                                },
                                "name": "ForObjectsWithChildren"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 7558,
                                "end": 7565,
                                "loc": {
                                  "start": {
                                    "line": 163,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 163,
                                    "column": 61
                                  }
                                },
                                "name": "objects"
                              }
                            ]
                          },
                          "leadingComments": null
                        }
                      ],
                      "kind": "var",
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "add related constraints for removal (before objects)",
                          "start": 7449,
                          "end": 7503,
                          "loc": {
                            "start": {
                              "line": 162,
                              "column": 8
                            },
                            "end": {
                              "line": 162,
                              "column": 62
                            }
                          },
                          "range": [
                            7449,
                            7503
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 7576,
                      "end": 7640,
                      "loc": {
                        "start": {
                          "line": 164,
                          "column": 8
                        },
                        "end": {
                          "line": 164,
                          "column": 72
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 7580,
                          "end": 7639,
                          "loc": {
                            "start": {
                              "line": 164,
                              "column": 12
                            },
                            "end": {
                              "line": 164,
                              "column": 71
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 7580,
                            "end": 7598,
                            "loc": {
                              "start": {
                                "line": 164,
                                "column": 12
                              },
                              "end": {
                                "line": 164,
                                "column": 30
                              }
                            },
                            "name": "relatedConstraints"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 7601,
                            "end": 7639,
                            "loc": {
                              "start": {
                                "line": 164,
                                "column": 33
                              },
                              "end": {
                                "line": 164,
                                "column": 71
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 7601,
                              "end": 7628,
                              "loc": {
                                "start": {
                                  "line": 164,
                                  "column": 33
                                },
                                "end": {
                                  "line": 164,
                                  "column": 60
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 7601,
                                "end": 7605,
                                "loc": {
                                  "start": {
                                    "line": 164,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 164,
                                    "column": 37
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 7606,
                                "end": 7628,
                                "loc": {
                                  "start": {
                                    "line": 164,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 164,
                                    "column": 60
                                  }
                                },
                                "name": "getConstraintsOnSketch"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 7629,
                                "end": 7638,
                                "loc": {
                                  "start": {
                                    "line": 164,
                                    "column": 61
                                  },
                                  "end": {
                                    "line": 164,
                                    "column": 70
                                  }
                                },
                                "name": "objectsCh"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 7649,
                      "end": 7748,
                      "loc": {
                        "start": {
                          "line": 165,
                          "column": 8
                        },
                        "end": {
                          "line": 165,
                          "column": 107
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 7649,
                        "end": 7747,
                        "loc": {
                          "start": {
                            "line": 165,
                            "column": 8
                          },
                          "end": {
                            "line": 165,
                            "column": 106
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 7649,
                          "end": 7656,
                          "loc": {
                            "start": {
                              "line": 165,
                              "column": 8
                            },
                            "end": {
                              "line": 165,
                              "column": 15
                            }
                          },
                          "name": "objects"
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 7659,
                          "end": 7747,
                          "loc": {
                            "start": {
                              "line": 165,
                              "column": 18
                            },
                            "end": {
                              "line": 165,
                              "column": 106
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 7659,
                            "end": 7684,
                            "loc": {
                              "start": {
                                "line": 165,
                                "column": 18
                              },
                              "end": {
                                "line": 165,
                                "column": 43
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 7659,
                              "end": 7677,
                              "loc": {
                                "start": {
                                  "line": 165,
                                  "column": 18
                                },
                                "end": {
                                  "line": 165,
                                  "column": 36
                                }
                              },
                              "name": "relatedConstraints"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7678,
                              "end": 7684,
                              "loc": {
                                "start": {
                                  "line": 165,
                                  "column": 37
                                },
                                "end": {
                                  "line": 165,
                                  "column": 43
                                }
                              },
                              "name": "concat"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "CallExpression",
                              "start": 7685,
                              "end": 7746,
                              "loc": {
                                "start": {
                                  "line": 165,
                                  "column": 44
                                },
                                "end": {
                                  "line": 165,
                                  "column": 105
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 7685,
                                "end": 7699,
                                "loc": {
                                  "start": {
                                    "line": 165,
                                    "column": 44
                                  },
                                  "end": {
                                    "line": 165,
                                    "column": 58
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 7685,
                                  "end": 7692,
                                  "loc": {
                                    "start": {
                                      "line": 165,
                                      "column": 44
                                    },
                                    "end": {
                                      "line": 165,
                                      "column": 51
                                    }
                                  },
                                  "name": "objects"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 7693,
                                  "end": 7699,
                                  "loc": {
                                    "start": {
                                      "line": 165,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 165,
                                      "column": 58
                                    }
                                  },
                                  "name": "filter"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ArrowFunctionExpression",
                                  "start": 7700,
                                  "end": 7745,
                                  "loc": {
                                    "start": {
                                      "line": 165,
                                      "column": 59
                                    },
                                    "end": {
                                      "line": 165,
                                      "column": 104
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": true,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 7700,
                                      "end": 7703,
                                      "loc": {
                                        "start": {
                                          "line": 165,
                                          "column": 59
                                        },
                                        "end": {
                                          "line": 165,
                                          "column": 62
                                        }
                                      },
                                      "name": "obj"
                                    }
                                  ],
                                  "body": {
                                    "type": "BinaryExpression",
                                    "start": 7707,
                                    "end": 7745,
                                    "loc": {
                                      "start": {
                                        "line": 165,
                                        "column": 66
                                      },
                                      "end": {
                                        "line": 165,
                                        "column": 104
                                      }
                                    },
                                    "left": {
                                      "type": "CallExpression",
                                      "start": 7707,
                                      "end": 7738,
                                      "loc": {
                                        "start": {
                                          "line": 165,
                                          "column": 66
                                        },
                                        "end": {
                                          "line": 165,
                                          "column": 97
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 7707,
                                        "end": 7733,
                                        "loc": {
                                          "start": {
                                            "line": 165,
                                            "column": 66
                                          },
                                          "end": {
                                            "line": 165,
                                            "column": 92
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 7707,
                                          "end": 7725,
                                          "loc": {
                                            "start": {
                                              "line": 165,
                                              "column": 66
                                            },
                                            "end": {
                                              "line": 165,
                                              "column": 84
                                            }
                                          },
                                          "name": "relatedConstraints"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 7726,
                                          "end": 7733,
                                          "loc": {
                                            "start": {
                                              "line": 165,
                                              "column": 85
                                            },
                                            "end": {
                                              "line": 165,
                                              "column": 92
                                            }
                                          },
                                          "name": "indexOf"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 7734,
                                          "end": 7737,
                                          "loc": {
                                            "start": {
                                              "line": 165,
                                              "column": 93
                                            },
                                            "end": {
                                              "line": 165,
                                              "column": 96
                                            }
                                          },
                                          "name": "obj"
                                        }
                                      ]
                                    },
                                    "operator": "===",
                                    "right": {
                                      "type": "UnaryExpression",
                                      "start": 7743,
                                      "end": 7745,
                                      "loc": {
                                        "start": {
                                          "line": 165,
                                          "column": 102
                                        },
                                        "end": {
                                          "line": 165,
                                          "column": 104
                                        }
                                      },
                                      "operator": "-",
                                      "prefix": true,
                                      "argument": {
                                        "type": "Literal",
                                        "start": 7744,
                                        "end": 7745,
                                        "loc": {
                                          "start": {
                                            "line": 165,
                                            "column": 103
                                          },
                                          "end": {
                                            "line": 165,
                                            "column": 104
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      }
                                    }
                                  }
                                }
                              ]
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 7757,
                      "end": 7860,
                      "loc": {
                        "start": {
                          "line": 166,
                          "column": 8
                        },
                        "end": {
                          "line": 166,
                          "column": 111
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 7757,
                        "end": 7859,
                        "loc": {
                          "start": {
                            "line": 166,
                            "column": 8
                          },
                          "end": {
                            "line": 166,
                            "column": 110
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 7757,
                          "end": 7766,
                          "loc": {
                            "start": {
                              "line": 166,
                              "column": 8
                            },
                            "end": {
                              "line": 166,
                              "column": 17
                            }
                          },
                          "name": "objectsCh"
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 7769,
                          "end": 7859,
                          "loc": {
                            "start": {
                              "line": 166,
                              "column": 20
                            },
                            "end": {
                              "line": 166,
                              "column": 110
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 7769,
                            "end": 7794,
                            "loc": {
                              "start": {
                                "line": 166,
                                "column": 20
                              },
                              "end": {
                                "line": 166,
                                "column": 45
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 7769,
                              "end": 7787,
                              "loc": {
                                "start": {
                                  "line": 166,
                                  "column": 20
                                },
                                "end": {
                                  "line": 166,
                                  "column": 38
                                }
                              },
                              "name": "relatedConstraints"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7788,
                              "end": 7794,
                              "loc": {
                                "start": {
                                  "line": 166,
                                  "column": 39
                                },
                                "end": {
                                  "line": 166,
                                  "column": 45
                                }
                              },
                              "name": "concat"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "CallExpression",
                              "start": 7795,
                              "end": 7858,
                              "loc": {
                                "start": {
                                  "line": 166,
                                  "column": 46
                                },
                                "end": {
                                  "line": 166,
                                  "column": 109
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 7795,
                                "end": 7811,
                                "loc": {
                                  "start": {
                                    "line": 166,
                                    "column": 46
                                  },
                                  "end": {
                                    "line": 166,
                                    "column": 62
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 7795,
                                  "end": 7804,
                                  "loc": {
                                    "start": {
                                      "line": 166,
                                      "column": 46
                                    },
                                    "end": {
                                      "line": 166,
                                      "column": 55
                                    }
                                  },
                                  "name": "objectsCh"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 7805,
                                  "end": 7811,
                                  "loc": {
                                    "start": {
                                      "line": 166,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 166,
                                      "column": 62
                                    }
                                  },
                                  "name": "filter"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ArrowFunctionExpression",
                                  "start": 7812,
                                  "end": 7857,
                                  "loc": {
                                    "start": {
                                      "line": 166,
                                      "column": 63
                                    },
                                    "end": {
                                      "line": 166,
                                      "column": 108
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": true,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 7812,
                                      "end": 7815,
                                      "loc": {
                                        "start": {
                                          "line": 166,
                                          "column": 63
                                        },
                                        "end": {
                                          "line": 166,
                                          "column": 66
                                        }
                                      },
                                      "name": "obj"
                                    }
                                  ],
                                  "body": {
                                    "type": "BinaryExpression",
                                    "start": 7819,
                                    "end": 7857,
                                    "loc": {
                                      "start": {
                                        "line": 166,
                                        "column": 70
                                      },
                                      "end": {
                                        "line": 166,
                                        "column": 108
                                      }
                                    },
                                    "left": {
                                      "type": "CallExpression",
                                      "start": 7819,
                                      "end": 7850,
                                      "loc": {
                                        "start": {
                                          "line": 166,
                                          "column": 70
                                        },
                                        "end": {
                                          "line": 166,
                                          "column": 101
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 7819,
                                        "end": 7845,
                                        "loc": {
                                          "start": {
                                            "line": 166,
                                            "column": 70
                                          },
                                          "end": {
                                            "line": 166,
                                            "column": 96
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 7819,
                                          "end": 7837,
                                          "loc": {
                                            "start": {
                                              "line": 166,
                                              "column": 70
                                            },
                                            "end": {
                                              "line": 166,
                                              "column": 88
                                            }
                                          },
                                          "name": "relatedConstraints"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 7838,
                                          "end": 7845,
                                          "loc": {
                                            "start": {
                                              "line": 166,
                                              "column": 89
                                            },
                                            "end": {
                                              "line": 166,
                                              "column": 96
                                            }
                                          },
                                          "name": "indexOf"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 7846,
                                          "end": 7849,
                                          "loc": {
                                            "start": {
                                              "line": 166,
                                              "column": 97
                                            },
                                            "end": {
                                              "line": 166,
                                              "column": 100
                                            }
                                          },
                                          "name": "obj"
                                        }
                                      ]
                                    },
                                    "operator": "===",
                                    "right": {
                                      "type": "UnaryExpression",
                                      "start": 7855,
                                      "end": 7857,
                                      "loc": {
                                        "start": {
                                          "line": 166,
                                          "column": 106
                                        },
                                        "end": {
                                          "line": 166,
                                          "column": 108
                                        }
                                      },
                                      "operator": "-",
                                      "prefix": true,
                                      "argument": {
                                        "type": "Literal",
                                        "start": 7856,
                                        "end": 7857,
                                        "loc": {
                                          "start": {
                                            "line": 166,
                                            "column": 107
                                          },
                                          "end": {
                                            "line": 166,
                                            "column": 108
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      }
                                    }
                                  }
                                }
                              ]
                            }
                          ]
                        }
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "remove all interactions first (including children)",
                          "start": 7870,
                          "end": 7922,
                          "loc": {
                            "start": {
                              "line": 168,
                              "column": 8
                            },
                            "end": {
                              "line": 168,
                              "column": 60
                            }
                          },
                          "range": [
                            7870,
                            7922
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 7931,
                      "end": 8052,
                      "loc": {
                        "start": {
                          "line": 169,
                          "column": 8
                        },
                        "end": {
                          "line": 172,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 7931,
                        "end": 8051,
                        "loc": {
                          "start": {
                            "line": 169,
                            "column": 8
                          },
                          "end": {
                            "line": 172,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 7931,
                          "end": 7948,
                          "loc": {
                            "start": {
                              "line": 169,
                              "column": 8
                            },
                            "end": {
                              "line": 169,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 7931,
                            "end": 7940,
                            "loc": {
                              "start": {
                                "line": 169,
                                "column": 8
                              },
                              "end": {
                                "line": 169,
                                "column": 17
                              }
                            },
                            "name": "objectsCh",
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7941,
                            "end": 7948,
                            "loc": {
                              "start": {
                                "line": 169,
                                "column": 18
                              },
                              "end": {
                                "line": 169,
                                "column": 25
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 7949,
                            "end": 8050,
                            "loc": {
                              "start": {
                                "line": 169,
                                "column": 26
                              },
                              "end": {
                                "line": 172,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 7949,
                                "end": 7952,
                                "loc": {
                                  "start": {
                                    "line": 169,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 169,
                                    "column": 29
                                  }
                                },
                                "name": "obj"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 7956,
                              "end": 8050,
                              "loc": {
                                "start": {
                                  "line": 169,
                                  "column": 33
                                },
                                "end": {
                                  "line": 172,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 7970,
                                  "end": 8003,
                                  "loc": {
                                    "start": {
                                      "line": 170,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 170,
                                      "column": 45
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 7970,
                                    "end": 8002,
                                    "loc": {
                                      "start": {
                                        "line": 170,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 170,
                                        "column": 44
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 7970,
                                      "end": 8000,
                                      "loc": {
                                        "start": {
                                          "line": 170,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 170,
                                          "column": 42
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 7970,
                                        "end": 7982,
                                        "loc": {
                                          "start": {
                                            "line": 170,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 170,
                                            "column": 24
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 7970,
                                          "end": 7973,
                                          "loc": {
                                            "start": {
                                              "line": 170,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 170,
                                              "column": 15
                                            }
                                          },
                                          "name": "obj"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 7974,
                                          "end": 7982,
                                          "loc": {
                                            "start": {
                                              "line": 170,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 170,
                                              "column": 24
                                            }
                                          },
                                          "name": "interact"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 7983,
                                        "end": 8000,
                                        "loc": {
                                          "start": {
                                            "line": 170,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 170,
                                            "column": 42
                                          }
                                        },
                                        "name": "removeInteraction"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 8016,
                                  "end": 8040,
                                  "loc": {
                                    "start": {
                                      "line": 171,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 171,
                                      "column": 36
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 8016,
                                    "end": 8039,
                                    "loc": {
                                      "start": {
                                        "line": 171,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 171,
                                        "column": 35
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 8016,
                                      "end": 8037,
                                      "loc": {
                                        "start": {
                                          "line": 171,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 171,
                                          "column": 33
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 8016,
                                        "end": 8019,
                                        "loc": {
                                          "start": {
                                            "line": 171,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 171,
                                            "column": 15
                                          }
                                        },
                                        "name": "obj"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 8020,
                                        "end": 8037,
                                        "loc": {
                                          "start": {
                                            "line": 171,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 171,
                                            "column": 33
                                          }
                                        },
                                        "name": "removeInteraction"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                }
                              ]
                            }
                          }
                        ],
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "remove all interactions first (including children)",
                          "start": 7870,
                          "end": 7922,
                          "loc": {
                            "start": {
                              "line": 168,
                              "column": 8
                            },
                            "end": {
                              "line": 168,
                              "column": 60
                            }
                          },
                          "range": [
                            7870,
                            7922
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 8062,
                      "end": 8304,
                      "loc": {
                        "start": {
                          "line": 174,
                          "column": 8
                        },
                        "end": {
                          "line": 180,
                          "column": 10
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 8066,
                          "end": 8303,
                          "loc": {
                            "start": {
                              "line": 174,
                              "column": 12
                            },
                            "end": {
                              "line": 180,
                              "column": 9
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 8066,
                            "end": 8077,
                            "loc": {
                              "start": {
                                "line": 174,
                                "column": 12
                              },
                              "end": {
                                "line": 174,
                                "column": 23
                              }
                            },
                            "name": "afterServer"
                          },
                          "init": {
                            "type": "ArrowFunctionExpression",
                            "start": 8080,
                            "end": 8303,
                            "loc": {
                              "start": {
                                "line": 174,
                                "column": 26
                              },
                              "end": {
                                "line": 180,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [],
                            "body": {
                              "type": "BlockStatement",
                              "start": 8086,
                              "end": 8303,
                              "loc": {
                                "start": {
                                  "line": 174,
                                  "column": 32
                                },
                                "end": {
                                  "line": 180,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 8100,
                                  "end": 8293,
                                  "loc": {
                                    "start": {
                                      "line": 175,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 179,
                                      "column": 15
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 8100,
                                    "end": 8292,
                                    "loc": {
                                      "start": {
                                        "line": 175,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 179,
                                        "column": 14
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 8100,
                                      "end": 8115,
                                      "loc": {
                                        "start": {
                                          "line": 175,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 175,
                                          "column": 27
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 8100,
                                        "end": 8107,
                                        "loc": {
                                          "start": {
                                            "line": 175,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 175,
                                            "column": 19
                                          }
                                        },
                                        "name": "objects"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 8108,
                                        "end": 8115,
                                        "loc": {
                                          "start": {
                                            "line": 175,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 175,
                                            "column": 27
                                          }
                                        },
                                        "name": "forEach"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "ArrowFunctionExpression",
                                        "start": 8116,
                                        "end": 8291,
                                        "loc": {
                                          "start": {
                                            "line": 175,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 179,
                                            "column": 13
                                          }
                                        },
                                        "id": null,
                                        "generator": false,
                                        "expression": false,
                                        "async": false,
                                        "params": [
                                          {
                                            "type": "Identifier",
                                            "start": 8116,
                                            "end": 8119,
                                            "loc": {
                                              "start": {
                                                "line": 175,
                                                "column": 28
                                              },
                                              "end": {
                                                "line": 175,
                                                "column": 31
                                              }
                                            },
                                            "name": "obj"
                                          }
                                        ],
                                        "body": {
                                          "type": "BlockStatement",
                                          "start": 8123,
                                          "end": 8291,
                                          "loc": {
                                            "start": {
                                              "line": 175,
                                              "column": 35
                                            },
                                            "end": {
                                              "line": 179,
                                              "column": 13
                                            }
                                          },
                                          "body": [
                                            {
                                              "type": "IfStatement",
                                              "start": 8141,
                                              "end": 8180,
                                              "loc": {
                                                "start": {
                                                  "line": 176,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 176,
                                                  "column": 55
                                                }
                                              },
                                              "test": {
                                                "type": "MemberExpression",
                                                "start": 8145,
                                                "end": 8161,
                                                "loc": {
                                                  "start": {
                                                    "line": 176,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 176,
                                                    "column": 36
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 8145,
                                                  "end": 8152,
                                                  "loc": {
                                                    "start": {
                                                      "line": 176,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 176,
                                                      "column": 27
                                                    }
                                                  },
                                                  "name": "options"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 8153,
                                                  "end": 8161,
                                                  "loc": {
                                                    "start": {
                                                      "line": 176,
                                                      "column": 28
                                                    },
                                                    "end": {
                                                      "line": 176,
                                                      "column": 36
                                                    }
                                                  },
                                                  "name": "onClient"
                                                },
                                                "computed": false
                                              },
                                              "consequent": {
                                                "type": "ExpressionStatement",
                                                "start": 8163,
                                                "end": 8180,
                                                "loc": {
                                                  "start": {
                                                    "line": 176,
                                                    "column": 38
                                                  },
                                                  "end": {
                                                    "line": 176,
                                                    "column": 55
                                                  }
                                                },
                                                "expression": {
                                                  "type": "CallExpression",
                                                  "start": 8163,
                                                  "end": 8179,
                                                  "loc": {
                                                    "start": {
                                                      "line": 176,
                                                      "column": 38
                                                    },
                                                    "end": {
                                                      "line": 176,
                                                      "column": 54
                                                    }
                                                  },
                                                  "callee": {
                                                    "type": "MemberExpression",
                                                    "start": 8163,
                                                    "end": 8174,
                                                    "loc": {
                                                      "start": {
                                                        "line": 176,
                                                        "column": 38
                                                      },
                                                      "end": {
                                                        "line": 176,
                                                        "column": 49
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "ThisExpression",
                                                      "start": 8163,
                                                      "end": 8167,
                                                      "loc": {
                                                        "start": {
                                                          "line": 176,
                                                          "column": 38
                                                        },
                                                        "end": {
                                                          "line": 176,
                                                          "column": 42
                                                        }
                                                      }
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 8168,
                                                      "end": 8174,
                                                      "loc": {
                                                        "start": {
                                                          "line": 176,
                                                          "column": 43
                                                        },
                                                        "end": {
                                                          "line": 176,
                                                          "column": 49
                                                        }
                                                      },
                                                      "name": "remove"
                                                    },
                                                    "computed": false
                                                  },
                                                  "arguments": [
                                                    {
                                                      "type": "Identifier",
                                                      "start": 8175,
                                                      "end": 8178,
                                                      "loc": {
                                                        "start": {
                                                          "line": 176,
                                                          "column": 50
                                                        },
                                                        "end": {
                                                          "line": 176,
                                                          "column": 53
                                                        }
                                                      },
                                                      "name": "obj"
                                                    }
                                                  ]
                                                }
                                              },
                                              "alternate": null
                                            },
                                            {
                                              "type": "ExpressionStatement",
                                              "start": 8197,
                                              "end": 8228,
                                              "loc": {
                                                "start": {
                                                  "line": 177,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 177,
                                                  "column": 47
                                                }
                                              },
                                              "expression": {
                                                "type": "CallExpression",
                                                "start": 8197,
                                                "end": 8227,
                                                "loc": {
                                                  "start": {
                                                    "line": 177,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 177,
                                                    "column": 46
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 8197,
                                                  "end": 8222,
                                                  "loc": {
                                                    "start": {
                                                      "line": 177,
                                                      "column": 16
                                                    },
                                                    "end": {
                                                      "line": 177,
                                                      "column": 41
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 8197,
                                                    "end": 8215,
                                                    "loc": {
                                                      "start": {
                                                        "line": 177,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 177,
                                                        "column": 34
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "ThisExpression",
                                                      "start": 8197,
                                                      "end": 8201,
                                                      "loc": {
                                                        "start": {
                                                          "line": 177,
                                                          "column": 16
                                                        },
                                                        "end": {
                                                          "line": 177,
                                                          "column": 20
                                                        }
                                                      }
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 8202,
                                                      "end": 8215,
                                                      "loc": {
                                                        "start": {
                                                          "line": 177,
                                                          "column": 21
                                                        },
                                                        "end": {
                                                          "line": 177,
                                                          "column": 34
                                                        }
                                                      },
                                                      "name": "sketchObjects"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 8216,
                                                    "end": 8222,
                                                    "loc": {
                                                      "start": {
                                                        "line": 177,
                                                        "column": 35
                                                      },
                                                      "end": {
                                                        "line": 177,
                                                        "column": 41
                                                      }
                                                    },
                                                    "name": "delete"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 8223,
                                                    "end": 8226,
                                                    "loc": {
                                                      "start": {
                                                        "line": 177,
                                                        "column": 42
                                                      },
                                                      "end": {
                                                        "line": 177,
                                                        "column": 45
                                                      }
                                                    },
                                                    "name": "obj"
                                                  }
                                                ]
                                              }
                                            },
                                            {
                                              "type": "ExpressionStatement",
                                              "start": 8245,
                                              "end": 8277,
                                              "loc": {
                                                "start": {
                                                  "line": 178,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 178,
                                                  "column": 48
                                                }
                                              },
                                              "expression": {
                                                "type": "CallExpression",
                                                "start": 8245,
                                                "end": 8276,
                                                "loc": {
                                                  "start": {
                                                    "line": 178,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 178,
                                                    "column": 47
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 8245,
                                                  "end": 8254,
                                                  "loc": {
                                                    "start": {
                                                      "line": 178,
                                                      "column": 16
                                                    },
                                                    "end": {
                                                      "line": 178,
                                                      "column": 25
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "ThisExpression",
                                                    "start": 8245,
                                                    "end": 8249,
                                                    "loc": {
                                                      "start": {
                                                        "line": 178,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 178,
                                                        "column": 20
                                                      }
                                                    }
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 8250,
                                                    "end": 8254,
                                                    "loc": {
                                                      "start": {
                                                        "line": 178,
                                                        "column": 21
                                                      },
                                                      "end": {
                                                        "line": 178,
                                                        "column": 25
                                                      }
                                                    },
                                                    "name": "emit"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "Literal",
                                                    "start": 8255,
                                                    "end": 8270,
                                                    "loc": {
                                                      "start": {
                                                        "line": 178,
                                                        "column": 26
                                                      },
                                                      "end": {
                                                        "line": 178,
                                                        "column": 41
                                                      }
                                                    },
                                                    "value": "SketchRemoved",
                                                    "rawValue": "SketchRemoved",
                                                    "raw": "'SketchRemoved'"
                                                  },
                                                  {
                                                    "type": "Identifier",
                                                    "start": 8272,
                                                    "end": 8275,
                                                    "loc": {
                                                      "start": {
                                                        "line": 178,
                                                        "column": 43
                                                      },
                                                      "end": {
                                                        "line": 178,
                                                        "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": 8314,
                          "end": 8395,
                          "loc": {
                            "start": {
                              "line": 182,
                              "column": 8
                            },
                            "end": {
                              "line": 182,
                              "column": 89
                            }
                          },
                          "range": [
                            8314,
                            8395
                          ]
                        }
                      ]
                    },
                    {
                      "type": "IfStatement",
                      "start": 8404,
                      "end": 8680,
                      "loc": {
                        "start": {
                          "line": 183,
                          "column": 8
                        },
                        "end": {
                          "line": 186,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "MemberExpression",
                        "start": 8408,
                        "end": 8424,
                        "loc": {
                          "start": {
                            "line": 183,
                            "column": 12
                          },
                          "end": {
                            "line": 183,
                            "column": 28
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 8408,
                          "end": 8415,
                          "loc": {
                            "start": {
                              "line": 183,
                              "column": 12
                            },
                            "end": {
                              "line": 183,
                              "column": 19
                            }
                          },
                          "name": "options",
                          "leadingComments": null
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 8416,
                          "end": 8424,
                          "loc": {
                            "start": {
                              "line": 183,
                              "column": 20
                            },
                            "end": {
                              "line": 183,
                              "column": 28
                            }
                          },
                          "name": "onServer"
                        },
                        "computed": false,
                        "leadingComments": null
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 8426,
                        "end": 8680,
                        "loc": {
                          "start": {
                            "line": 183,
                            "column": 30
                          },
                          "end": {
                            "line": 186,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 8440,
                            "end": 8513,
                            "loc": {
                              "start": {
                                "line": 184,
                                "column": 12
                              },
                              "end": {
                                "line": 184,
                                "column": 85
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 8444,
                                "end": 8512,
                                "loc": {
                                  "start": {
                                    "line": 184,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 184,
                                    "column": 84
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 8444,
                                  "end": 8452,
                                  "loc": {
                                    "start": {
                                      "line": 184,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 184,
                                      "column": 24
                                    }
                                  },
                                  "name": "commands"
                                },
                                "init": {
                                  "type": "CallExpression",
                                  "start": 8455,
                                  "end": 8512,
                                  "loc": {
                                    "start": {
                                      "line": 184,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 184,
                                      "column": 84
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 8455,
                                    "end": 8466,
                                    "loc": {
                                      "start": {
                                        "line": 184,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 184,
                                        "column": 38
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 8455,
                                      "end": 8462,
                                      "loc": {
                                        "start": {
                                          "line": 184,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 184,
                                          "column": 34
                                        }
                                      },
                                      "name": "objects"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 8463,
                                      "end": 8466,
                                      "loc": {
                                        "start": {
                                          "line": 184,
                                          "column": 35
                                        },
                                        "end": {
                                          "line": 184,
                                          "column": 38
                                        }
                                      },
                                      "name": "map"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "ArrowFunctionExpression",
                                      "start": 8467,
                                      "end": 8511,
                                      "loc": {
                                        "start": {
                                          "line": 184,
                                          "column": 39
                                        },
                                        "end": {
                                          "line": 184,
                                          "column": 83
                                        }
                                      },
                                      "id": null,
                                      "generator": false,
                                      "expression": true,
                                      "async": false,
                                      "params": [
                                        {
                                          "type": "Identifier",
                                          "start": 8467,
                                          "end": 8473,
                                          "loc": {
                                            "start": {
                                              "line": 184,
                                              "column": 39
                                            },
                                            "end": {
                                              "line": 184,
                                              "column": 45
                                            }
                                          },
                                          "name": "object"
                                        }
                                      ],
                                      "body": {
                                        "type": "CallExpression",
                                        "start": 8477,
                                        "end": 8511,
                                        "loc": {
                                          "start": {
                                            "line": 184,
                                            "column": 49
                                          },
                                          "end": {
                                            "line": 184,
                                            "column": 83
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 8477,
                                          "end": 8505,
                                          "loc": {
                                            "start": {
                                              "line": 184,
                                              "column": 49
                                            },
                                            "end": {
                                              "line": 184,
                                              "column": 77
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 8477,
                                            "end": 8483,
                                            "loc": {
                                              "start": {
                                                "line": 184,
                                                "column": 49
                                              },
                                              "end": {
                                                "line": 184,
                                                "column": 55
                                              }
                                            },
                                            "name": "object"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 8484,
                                            "end": 8505,
                                            "loc": {
                                              "start": {
                                                "line": 184,
                                                "column": 56
                                              },
                                              "end": {
                                                "line": 184,
                                                "column": 77
                                              }
                                            },
                                            "name": "prepareRemoveOnServer"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "ThisExpression",
                                            "start": 8506,
                                            "end": 8510,
                                            "loc": {
                                              "start": {
                                                "line": 184,
                                                "column": 78
                                              },
                                              "end": {
                                                "line": 184,
                                                "column": 82
                                              }
                                            }
                                          }
                                        ]
                                      }
                                    }
                                  ]
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 8526,
                            "end": 8670,
                            "loc": {
                              "start": {
                                "line": 185,
                                "column": 12
                              },
                              "end": {
                                "line": 185,
                                "column": 156
                              }
                            },
                            "argument": {
                              "type": "CallExpression",
                              "start": 8533,
                              "end": 8669,
                              "loc": {
                                "start": {
                                  "line": 185,
                                  "column": 19
                                },
                                "end": {
                                  "line": 185,
                                  "column": 155
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 8533,
                                "end": 8656,
                                "loc": {
                                  "start": {
                                    "line": 185,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 185,
                                    "column": 142
                                  }
                                },
                                "object": {
                                  "type": "ConditionalExpression",
                                  "start": 8534,
                                  "end": 8650,
                                  "loc": {
                                    "start": {
                                      "line": 185,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 185,
                                      "column": 136
                                    }
                                  },
                                  "test": {
                                    "type": "MemberExpression",
                                    "start": 8534,
                                    "end": 8554,
                                    "loc": {
                                      "start": {
                                        "line": 185,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 185,
                                        "column": 40
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 8534,
                                      "end": 8541,
                                      "loc": {
                                        "start": {
                                          "line": 185,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 185,
                                          "column": 27
                                        }
                                      },
                                      "name": "options"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 8542,
                                      "end": 8554,
                                      "loc": {
                                        "start": {
                                          "line": 185,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 185,
                                          "column": 40
                                        }
                                      },
                                      "name": "updateSketch"
                                    },
                                    "computed": false
                                  },
                                  "consequent": {
                                    "type": "CallExpression",
                                    "start": 8557,
                                    "end": 8605,
                                    "loc": {
                                      "start": {
                                        "line": 185,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 185,
                                        "column": 91
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 8557,
                                      "end": 8578,
                                      "loc": {
                                        "start": {
                                          "line": 185,
                                          "column": 43
                                        },
                                        "end": {
                                          "line": 185,
                                          "column": 64
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 8557,
                                        "end": 8561,
                                        "loc": {
                                          "start": {
                                            "line": 185,
                                            "column": 43
                                          },
                                          "end": {
                                            "line": 185,
                                            "column": 47
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 8562,
                                        "end": 8578,
                                        "loc": {
                                          "start": {
                                            "line": 185,
                                            "column": 48
                                          },
                                          "end": {
                                            "line": 185,
                                            "column": 64
                                          }
                                        },
                                        "name": "updateFromServer"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "MemberExpression",
                                        "start": 8579,
                                        "end": 8594,
                                        "loc": {
                                          "start": {
                                            "line": 185,
                                            "column": 65
                                          },
                                          "end": {
                                            "line": 185,
                                            "column": 80
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 8579,
                                          "end": 8587,
                                          "loc": {
                                            "start": {
                                              "line": 185,
                                              "column": 65
                                            },
                                            "end": {
                                              "line": 185,
                                              "column": 73
                                            }
                                          },
                                          "name": "sketcher"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 8588,
                                          "end": 8594,
                                          "loc": {
                                            "start": {
                                              "line": 185,
                                              "column": 74
                                            },
                                            "end": {
                                              "line": 185,
                                              "column": 80
                                            }
                                          },
                                          "name": "server"
                                        },
                                        "computed": false
                                      },
                                      {
                                        "type": "Identifier",
                                        "start": 8596,
                                        "end": 8604,
                                        "loc": {
                                          "start": {
                                            "line": 185,
                                            "column": 82
                                          },
                                          "end": {
                                            "line": 185,
                                            "column": 90
                                          }
                                        },
                                        "name": "commands"
                                      }
                                    ]
                                  },
                                  "alternate": {
                                    "type": "CallExpression",
                                    "start": 8608,
                                    "end": 8650,
                                    "loc": {
                                      "start": {
                                        "line": 185,
                                        "column": 94
                                      },
                                      "end": {
                                        "line": 185,
                                        "column": 136
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 8608,
                                      "end": 8623,
                                      "loc": {
                                        "start": {
                                          "line": 185,
                                          "column": 94
                                        },
                                        "end": {
                                          "line": 185,
                                          "column": 109
                                        }
                                      },
                                      "name": "executePrepared"
                                    },
                                    "arguments": [
                                      {
                                        "type": "MemberExpression",
                                        "start": 8624,
                                        "end": 8639,
                                        "loc": {
                                          "start": {
                                            "line": 185,
                                            "column": 110
                                          },
                                          "end": {
                                            "line": 185,
                                            "column": 125
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 8624,
                                          "end": 8632,
                                          "loc": {
                                            "start": {
                                              "line": 185,
                                              "column": 110
                                            },
                                            "end": {
                                              "line": 185,
                                              "column": 118
                                            }
                                          },
                                          "name": "sketcher"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 8633,
                                          "end": 8639,
                                          "loc": {
                                            "start": {
                                              "line": 185,
                                              "column": 119
                                            },
                                            "end": {
                                              "line": 185,
                                              "column": 125
                                            }
                                          },
                                          "name": "server"
                                        },
                                        "computed": false
                                      },
                                      {
                                        "type": "Identifier",
                                        "start": 8641,
                                        "end": 8649,
                                        "loc": {
                                          "start": {
                                            "line": 185,
                                            "column": 127
                                          },
                                          "end": {
                                            "line": 185,
                                            "column": 135
                                          }
                                        },
                                        "name": "commands"
                                      }
                                    ]
                                  },
                                  "parenthesizedExpression": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 8652,
                                  "end": 8656,
                                  "loc": {
                                    "start": {
                                      "line": 185,
                                      "column": 138
                                    },
                                    "end": {
                                      "line": 185,
                                      "column": 142
                                    }
                                  },
                                  "name": "then"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 8657,
                                  "end": 8668,
                                  "loc": {
                                    "start": {
                                      "line": 185,
                                      "column": 143
                                    },
                                    "end": {
                                      "line": 185,
                                      "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": 8314,
                          "end": 8395,
                          "loc": {
                            "start": {
                              "line": 182,
                              "column": 8
                            },
                            "end": {
                              "line": 182,
                              "column": 89
                            }
                          },
                          "range": [
                            8314,
                            8395
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 8689,
                      "end": 8727,
                      "loc": {
                        "start": {
                          "line": 187,
                          "column": 8
                        },
                        "end": {
                          "line": 187,
                          "column": 46
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 8696,
                        "end": 8726,
                        "loc": {
                          "start": {
                            "line": 187,
                            "column": 15
                          },
                          "end": {
                            "line": 187,
                            "column": 45
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 8696,
                          "end": 8711,
                          "loc": {
                            "start": {
                              "line": 187,
                              "column": 15
                            },
                            "end": {
                              "line": 187,
                              "column": 30
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 8696,
                            "end": 8703,
                            "loc": {
                              "start": {
                                "line": 187,
                                "column": 15
                              },
                              "end": {
                                "line": 187,
                                "column": 22
                              }
                            },
                            "name": "Promise"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 8704,
                            "end": 8711,
                            "loc": {
                              "start": {
                                "line": 187,
                                "column": 23
                              },
                              "end": {
                                "line": 187,
                                "column": 30
                              }
                            },
                            "name": "resolve"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 8712,
                            "end": 8725,
                            "loc": {
                              "start": {
                                "line": 187,
                                "column": 31
                              },
                              "end": {
                                "line": 187,
                                "column": 44
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 8712,
                              "end": 8723,
                              "loc": {
                                "start": {
                                  "line": 187,
                                  "column": 31
                                },
                                "end": {
                                  "line": 187,
                                  "column": 42
                                }
                              },
                              "name": "afterServer"
                            },
                            "arguments": []
                          }
                        ]
                      }
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " Remove objects previously added with addToSketch",
                  "start": 7007,
                  "end": 7058,
                  "loc": {
                    "start": {
                      "line": 152,
                      "column": 4
                    },
                    "end": {
                      "line": 152,
                      "column": 55
                    }
                  },
                  "range": [
                    7007,
                    7058
                  ]
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " Return list of objects added with addToSketch (but not addAuxObject)",
                  "start": 8739,
                  "end": 8810,
                  "loc": {
                    "start": {
                      "line": 190,
                      "column": 4
                    },
                    "end": {
                      "line": 190,
                      "column": 75
                    }
                  },
                  "range": [
                    8739,
                    8810
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 8815,
              "end": 8912,
              "loc": {
                "start": {
                  "line": 191,
                  "column": 4
                },
                "end": {
                  "line": 193,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 8815,
                "end": 8833,
                "loc": {
                  "start": {
                    "line": 191,
                    "column": 4
                  },
                  "end": {
                    "line": 191,
                    "column": 22
                  }
                },
                "name": "getObjectsOnSketch",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 8833,
                "end": 8912,
                "loc": {
                  "start": {
                    "line": 191,
                    "column": 22
                  },
                  "end": {
                    "line": 193,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 8836,
                  "end": 8912,
                  "loc": {
                    "start": {
                      "line": 191,
                      "column": 25
                    },
                    "end": {
                      "line": 193,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 8846,
                      "end": 8906,
                      "loc": {
                        "start": {
                          "line": 192,
                          "column": 8
                        },
                        "end": {
                          "line": 192,
                          "column": 68
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 8853,
                        "end": 8905,
                        "loc": {
                          "start": {
                            "line": 192,
                            "column": 15
                          },
                          "end": {
                            "line": 192,
                            "column": 67
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 8853,
                          "end": 8873,
                          "loc": {
                            "start": {
                              "line": 192,
                              "column": 15
                            },
                            "end": {
                              "line": 192,
                              "column": 35
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 8853,
                            "end": 8866,
                            "loc": {
                              "start": {
                                "line": 192,
                                "column": 15
                              },
                              "end": {
                                "line": 192,
                                "column": 28
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 8853,
                              "end": 8857,
                              "loc": {
                                "start": {
                                  "line": 192,
                                  "column": 15
                                },
                                "end": {
                                  "line": 192,
                                  "column": 19
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 8858,
                              "end": 8866,
                              "loc": {
                                "start": {
                                  "line": 192,
                                  "column": 20
                                },
                                "end": {
                                  "line": 192,
                                  "column": 28
                                }
                              },
                              "name": "children"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 8867,
                            "end": 8873,
                            "loc": {
                              "start": {
                                "line": 192,
                                "column": 29
                              },
                              "end": {
                                "line": 192,
                                "column": 35
                              }
                            },
                            "name": "filter"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 8874,
                            "end": 8904,
                            "loc": {
                              "start": {
                                "line": 192,
                                "column": 36
                              },
                              "end": {
                                "line": 192,
                                "column": 66
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": true,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 8874,
                                "end": 8875,
                                "loc": {
                                  "start": {
                                    "line": 192,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 192,
                                    "column": 37
                                  }
                                },
                                "name": "c"
                              }
                            ],
                            "body": {
                              "type": "CallExpression",
                              "start": 8879,
                              "end": 8904,
                              "loc": {
                                "start": {
                                  "line": 192,
                                  "column": 41
                                },
                                "end": {
                                  "line": 192,
                                  "column": 66
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 8879,
                                "end": 8901,
                                "loc": {
                                  "start": {
                                    "line": 192,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 192,
                                    "column": 63
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 8879,
                                  "end": 8897,
                                  "loc": {
                                    "start": {
                                      "line": 192,
                                      "column": 41
                                    },
                                    "end": {
                                      "line": 192,
                                      "column": 59
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 8879,
                                    "end": 8883,
                                    "loc": {
                                      "start": {
                                        "line": 192,
                                        "column": 41
                                      },
                                      "end": {
                                        "line": 192,
                                        "column": 45
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 8884,
                                    "end": 8897,
                                    "loc": {
                                      "start": {
                                        "line": 192,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 192,
                                        "column": 59
                                      }
                                    },
                                    "name": "sketchObjects"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 8898,
                                  "end": 8901,
                                  "loc": {
                                    "start": {
                                      "line": 192,
                                      "column": 60
                                    },
                                    "end": {
                                      "line": 192,
                                      "column": 63
                                    }
                                  },
                                  "name": "has"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 8902,
                                  "end": 8903,
                                  "loc": {
                                    "start": {
                                      "line": 192,
                                      "column": 64
                                    },
                                    "end": {
                                      "line": 192,
                                      "column": 65
                                    }
                                  },
                                  "name": "c"
                                }
                              ]
                            }
                          }
                        ]
                      }
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " Return list of objects added with addToSketch (but not addAuxObject)",
                  "start": 8739,
                  "end": 8810,
                  "loc": {
                    "start": {
                      "line": 190,
                      "column": 4
                    },
                    "end": {
                      "line": 190,
                      "column": 75
                    }
                  },
                  "range": [
                    8739,
                    8810
                  ]
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " Return list of constraints related to passed object or objects,",
                  "start": 8918,
                  "end": 8984,
                  "loc": {
                    "start": {
                      "line": 195,
                      "column": 4
                    },
                    "end": {
                      "line": 195,
                      "column": 70
                    }
                  },
                  "range": [
                    8918,
                    8984
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " or list of all constraints, if 'objects' parameter is undefined",
                  "start": 8989,
                  "end": 9055,
                  "loc": {
                    "start": {
                      "line": 196,
                      "column": 4
                    },
                    "end": {
                      "line": 196,
                      "column": 70
                    }
                  },
                  "range": [
                    8989,
                    9055
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 9060,
              "end": 9497,
              "loc": {
                "start": {
                  "line": 197,
                  "column": 4
                },
                "end": {
                  "line": 207,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 9060,
                "end": 9082,
                "loc": {
                  "start": {
                    "line": 197,
                    "column": 4
                  },
                  "end": {
                    "line": 197,
                    "column": 26
                  }
                },
                "name": "getConstraintsOnSketch",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 9082,
                "end": 9497,
                "loc": {
                  "start": {
                    "line": 197,
                    "column": 26
                  },
                  "end": {
                    "line": 207,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 9083,
                    "end": 9090,
                    "loc": {
                      "start": {
                        "line": 197,
                        "column": 27
                      },
                      "end": {
                        "line": 197,
                        "column": 34
                      }
                    },
                    "name": "objects"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 9092,
                  "end": 9497,
                  "loc": {
                    "start": {
                      "line": 197,
                      "column": 36
                    },
                    "end": {
                      "line": 207,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 9102,
                      "end": 9144,
                      "loc": {
                        "start": {
                          "line": 198,
                          "column": 8
                        },
                        "end": {
                          "line": 198,
                          "column": 50
                        }
                      },
                      "test": {
                        "type": "Identifier",
                        "start": 9106,
                        "end": 9113,
                        "loc": {
                          "start": {
                            "line": 198,
                            "column": 12
                          },
                          "end": {
                            "line": 198,
                            "column": 19
                          }
                        },
                        "name": "objects"
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 9115,
                        "end": 9144,
                        "loc": {
                          "start": {
                            "line": 198,
                            "column": 21
                          },
                          "end": {
                            "line": 198,
                            "column": 50
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 9115,
                          "end": 9143,
                          "loc": {
                            "start": {
                              "line": 198,
                              "column": 21
                            },
                            "end": {
                              "line": 198,
                              "column": 49
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "Identifier",
                            "start": 9115,
                            "end": 9122,
                            "loc": {
                              "start": {
                                "line": 198,
                                "column": 21
                              },
                              "end": {
                                "line": 198,
                                "column": 28
                              }
                            },
                            "name": "objects"
                          },
                          "right": {
                            "type": "CallExpression",
                            "start": 9125,
                            "end": 9143,
                            "loc": {
                              "start": {
                                "line": 198,
                                "column": 31
                              },
                              "end": {
                                "line": 198,
                                "column": 49
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 9125,
                              "end": 9134,
                              "loc": {
                                "start": {
                                  "line": 198,
                                  "column": 31
                                },
                                "end": {
                                  "line": 198,
                                  "column": 40
                                }
                              },
                              "object": {
                                "type": "ArrayExpression",
                                "start": 9125,
                                "end": 9127,
                                "loc": {
                                  "start": {
                                    "line": 198,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 198,
                                    "column": 33
                                  }
                                },
                                "elements": []
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 9128,
                                "end": 9134,
                                "loc": {
                                  "start": {
                                    "line": 198,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 198,
                                    "column": 40
                                  }
                                },
                                "name": "concat"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 9135,
                                "end": 9142,
                                "loc": {
                                  "start": {
                                    "line": 198,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 198,
                                    "column": 48
                                  }
                                },
                                "name": "objects"
                              }
                            ]
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 9154,
                      "end": 9225,
                      "loc": {
                        "start": {
                          "line": 200,
                          "column": 8
                        },
                        "end": {
                          "line": 200,
                          "column": 79
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 9158,
                          "end": 9224,
                          "loc": {
                            "start": {
                              "line": 200,
                              "column": 12
                            },
                            "end": {
                              "line": 200,
                              "column": 78
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 9158,
                            "end": 9171,
                            "loc": {
                              "start": {
                                "line": 200,
                                "column": 12
                              },
                              "end": {
                                "line": 200,
                                "column": 25
                              }
                            },
                            "name": "inObjectsList"
                          },
                          "init": {
                            "type": "ArrowFunctionExpression",
                            "start": 9175,
                            "end": 9223,
                            "loc": {
                              "start": {
                                "line": 200,
                                "column": 29
                              },
                              "end": {
                                "line": 200,
                                "column": 77
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": true,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 9175,
                                "end": 9179,
                                "loc": {
                                  "start": {
                                    "line": 200,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 200,
                                    "column": 33
                                  }
                                },
                                "name": "elem"
                              }
                            ],
                            "body": {
                              "type": "LogicalExpression",
                              "start": 9183,
                              "end": 9223,
                              "loc": {
                                "start": {
                                  "line": 200,
                                  "column": 37
                                },
                                "end": {
                                  "line": 200,
                                  "column": 77
                                }
                              },
                              "left": {
                                "type": "UnaryExpression",
                                "start": 9183,
                                "end": 9191,
                                "loc": {
                                  "start": {
                                    "line": 200,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 200,
                                    "column": 45
                                  }
                                },
                                "operator": "!",
                                "prefix": true,
                                "argument": {
                                  "type": "Identifier",
                                  "start": 9184,
                                  "end": 9191,
                                  "loc": {
                                    "start": {
                                      "line": 200,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 200,
                                      "column": 45
                                    }
                                  },
                                  "name": "objects"
                                }
                              },
                              "operator": "||",
                              "right": {
                                "type": "BinaryExpression",
                                "start": 9195,
                                "end": 9223,
                                "loc": {
                                  "start": {
                                    "line": 200,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 200,
                                    "column": 77
                                  }
                                },
                                "left": {
                                  "type": "CallExpression",
                                  "start": 9195,
                                  "end": 9216,
                                  "loc": {
                                    "start": {
                                      "line": 200,
                                      "column": 49
                                    },
                                    "end": {
                                      "line": 200,
                                      "column": 70
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 9195,
                                    "end": 9210,
                                    "loc": {
                                      "start": {
                                        "line": 200,
                                        "column": 49
                                      },
                                      "end": {
                                        "line": 200,
                                        "column": 64
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 9195,
                                      "end": 9202,
                                      "loc": {
                                        "start": {
                                          "line": 200,
                                          "column": 49
                                        },
                                        "end": {
                                          "line": 200,
                                          "column": 56
                                        }
                                      },
                                      "name": "objects"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 9203,
                                      "end": 9210,
                                      "loc": {
                                        "start": {
                                          "line": 200,
                                          "column": 57
                                        },
                                        "end": {
                                          "line": 200,
                                          "column": 64
                                        }
                                      },
                                      "name": "indexOf"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 9211,
                                      "end": 9215,
                                      "loc": {
                                        "start": {
                                          "line": 200,
                                          "column": 65
                                        },
                                        "end": {
                                          "line": 200,
                                          "column": 69
                                        }
                                      },
                                      "name": "elem"
                                    }
                                  ]
                                },
                                "operator": "!==",
                                "right": {
                                  "type": "UnaryExpression",
                                  "start": 9221,
                                  "end": 9223,
                                  "loc": {
                                    "start": {
                                      "line": 200,
                                      "column": 75
                                    },
                                    "end": {
                                      "line": 200,
                                      "column": 77
                                    }
                                  },
                                  "operator": "-",
                                  "prefix": true,
                                  "argument": {
                                    "type": "Literal",
                                    "start": 9222,
                                    "end": 9223,
                                    "loc": {
                                      "start": {
                                        "line": 200,
                                        "column": 76
                                      },
                                      "end": {
                                        "line": 200,
                                        "column": 77
                                      }
                                    },
                                    "value": 1,
                                    "rawValue": 1,
                                    "raw": "1"
                                  }
                                }
                              }
                            },
                            "parenthesizedExpression": true
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 9234,
                      "end": 9303,
                      "loc": {
                        "start": {
                          "line": 201,
                          "column": 8
                        },
                        "end": {
                          "line": 201,
                          "column": 77
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 9238,
                          "end": 9302,
                          "loc": {
                            "start": {
                              "line": 201,
                              "column": 12
                            },
                            "end": {
                              "line": 201,
                              "column": 76
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 9238,
                            "end": 9256,
                            "loc": {
                              "start": {
                                "line": 201,
                                "column": 12
                              },
                              "end": {
                                "line": 201,
                                "column": 30
                              }
                            },
                            "name": "isRelatedToObjects"
                          },
                          "init": {
                            "type": "ArrowFunctionExpression",
                            "start": 9260,
                            "end": 9301,
                            "loc": {
                              "start": {
                                "line": 201,
                                "column": 34
                              },
                              "end": {
                                "line": 201,
                                "column": 75
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": true,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 9260,
                                "end": 9266,
                                "loc": {
                                  "start": {
                                    "line": 201,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 201,
                                    "column": 40
                                  }
                                },
                                "name": "constr"
                              }
                            ],
                            "body": {
                              "type": "CallExpression",
                              "start": 9270,
                              "end": 9301,
                              "loc": {
                                "start": {
                                  "line": 201,
                                  "column": 44
                                },
                                "end": {
                                  "line": 201,
                                  "column": 75
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 9270,
                                "end": 9286,
                                "loc": {
                                  "start": {
                                    "line": 201,
                                    "column": 44
                                  },
                                  "end": {
                                    "line": 201,
                                    "column": 60
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 9270,
                                  "end": 9281,
                                  "loc": {
                                    "start": {
                                      "line": 201,
                                      "column": 44
                                    },
                                    "end": {
                                      "line": 201,
                                      "column": 55
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 9270,
                                    "end": 9276,
                                    "loc": {
                                      "start": {
                                        "line": 201,
                                        "column": 44
                                      },
                                      "end": {
                                        "line": 201,
                                        "column": 50
                                      }
                                    },
                                    "name": "constr"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9277,
                                    "end": 9281,
                                    "loc": {
                                      "start": {
                                        "line": 201,
                                        "column": 51
                                      },
                                      "end": {
                                        "line": 201,
                                        "column": 55
                                      }
                                    },
                                    "name": "args"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 9282,
                                  "end": 9286,
                                  "loc": {
                                    "start": {
                                      "line": 201,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 201,
                                      "column": 60
                                    }
                                  },
                                  "name": "some"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 9287,
                                  "end": 9300,
                                  "loc": {
                                    "start": {
                                      "line": 201,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 201,
                                      "column": 74
                                    }
                                  },
                                  "name": "inObjectsList"
                                }
                              ]
                            },
                            "parenthesizedExpression": true
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 9313,
                      "end": 9459,
                      "loc": {
                        "start": {
                          "line": 203,
                          "column": 8
                        },
                        "end": {
                          "line": 205,
                          "column": 40
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 9317,
                          "end": 9458,
                          "loc": {
                            "start": {
                              "line": 203,
                              "column": 12
                            },
                            "end": {
                              "line": 205,
                              "column": 39
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 9317,
                            "end": 9332,
                            "loc": {
                              "start": {
                                "line": 203,
                                "column": 12
                              },
                              "end": {
                                "line": 203,
                                "column": 27
                              }
                            },
                            "name": "constraintsList"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 9335,
                            "end": 9458,
                            "loc": {
                              "start": {
                                "line": 203,
                                "column": 30
                              },
                              "end": {
                                "line": 205,
                                "column": 39
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 9335,
                              "end": 9438,
                              "loc": {
                                "start": {
                                  "line": 203,
                                  "column": 30
                                },
                                "end": {
                                  "line": 205,
                                  "column": 19
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 9335,
                                "end": 9418,
                                "loc": {
                                  "start": {
                                    "line": 203,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 204,
                                    "column": 57
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 9335,
                                  "end": 9380,
                                  "loc": {
                                    "start": {
                                      "line": 203,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 204,
                                      "column": 19
                                    }
                                  },
                                  "object": {
                                    "type": "CallExpression",
                                    "start": 9335,
                                    "end": 9360,
                                    "loc": {
                                      "start": {
                                        "line": 203,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 203,
                                        "column": 55
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 9335,
                                      "end": 9358,
                                      "loc": {
                                        "start": {
                                          "line": 203,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 203,
                                          "column": 53
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 9335,
                                        "end": 9339,
                                        "loc": {
                                          "start": {
                                            "line": 203,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 203,
                                            "column": 34
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 9340,
                                        "end": 9358,
                                        "loc": {
                                          "start": {
                                            "line": 203,
                                            "column": 35
                                          },
                                          "end": {
                                            "line": 203,
                                            "column": 53
                                          }
                                        },
                                        "name": "getObjectsOnSketch"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9374,
                                    "end": 9380,
                                    "loc": {
                                      "start": {
                                        "line": 204,
                                        "column": 13
                                      },
                                      "end": {
                                        "line": 204,
                                        "column": 19
                                      }
                                    },
                                    "name": "filter"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "ArrowFunctionExpression",
                                    "start": 9381,
                                    "end": 9417,
                                    "loc": {
                                      "start": {
                                        "line": 204,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 204,
                                        "column": 56
                                      }
                                    },
                                    "id": null,
                                    "generator": false,
                                    "expression": true,
                                    "async": false,
                                    "params": [
                                      {
                                        "type": "Identifier",
                                        "start": 9381,
                                        "end": 9386,
                                        "loc": {
                                          "start": {
                                            "line": 204,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 204,
                                            "column": 25
                                          }
                                        },
                                        "name": "child"
                                      }
                                    ],
                                    "body": {
                                      "type": "BinaryExpression",
                                      "start": 9390,
                                      "end": 9417,
                                      "loc": {
                                        "start": {
                                          "line": 204,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 204,
                                          "column": 56
                                        }
                                      },
                                      "left": {
                                        "type": "Identifier",
                                        "start": 9390,
                                        "end": 9395,
                                        "loc": {
                                          "start": {
                                            "line": 204,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 204,
                                            "column": 34
                                          }
                                        },
                                        "name": "child"
                                      },
                                      "operator": "instanceof",
                                      "right": {
                                        "type": "Identifier",
                                        "start": 9407,
                                        "end": 9417,
                                        "loc": {
                                          "start": {
                                            "line": 204,
                                            "column": 46
                                          },
                                          "end": {
                                            "line": 204,
                                            "column": 56
                                          }
                                        },
                                        "name": "Constraint"
                                      }
                                    }
                                  }
                                ]
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 9432,
                                "end": 9438,
                                "loc": {
                                  "start": {
                                    "line": 205,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 205,
                                    "column": 19
                                  }
                                },
                                "name": "filter"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 9439,
                                "end": 9457,
                                "loc": {
                                  "start": {
                                    "line": 205,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 205,
                                    "column": 38
                                  }
                                },
                                "name": "isRelatedToObjects"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 9468,
                      "end": 9491,
                      "loc": {
                        "start": {
                          "line": 206,
                          "column": 8
                        },
                        "end": {
                          "line": 206,
                          "column": 31
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 9475,
                        "end": 9490,
                        "loc": {
                          "start": {
                            "line": 206,
                            "column": 15
                          },
                          "end": {
                            "line": 206,
                            "column": 30
                          }
                        },
                        "name": "constraintsList"
                      }
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " Return list of constraints related to passed object or objects,",
                  "start": 8918,
                  "end": 8984,
                  "loc": {
                    "start": {
                      "line": 195,
                      "column": 4
                    },
                    "end": {
                      "line": 195,
                      "column": 70
                    }
                  },
                  "range": [
                    8918,
                    8984
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " or list of all constraints, if 'objects' parameter is undefined",
                  "start": 8989,
                  "end": 9055,
                  "loc": {
                    "start": {
                      "line": 196,
                      "column": 4
                    },
                    "end": {
                      "line": 196,
                      "column": 70
                    }
                  },
                  "range": [
                    8989,
                    9055
                  ]
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " Return ancestor of the object that is directly lying on the sketch",
                  "start": 9503,
                  "end": 9572,
                  "loc": {
                    "start": {
                      "line": 209,
                      "column": 4
                    },
                    "end": {
                      "line": 209,
                      "column": 73
                    }
                  },
                  "range": [
                    9503,
                    9572
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 9577,
              "end": 9771,
              "loc": {
                "start": {
                  "line": 210,
                  "column": 4
                },
                "end": {
                  "line": 216,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 9577,
                "end": 9596,
                "loc": {
                  "start": {
                    "line": 210,
                    "column": 4
                  },
                  "end": {
                    "line": 210,
                    "column": 23
                  }
                },
                "name": "getAncestorOnSketch",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 9596,
                "end": 9771,
                "loc": {
                  "start": {
                    "line": 210,
                    "column": 23
                  },
                  "end": {
                    "line": 216,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 9597,
                    "end": 9603,
                    "loc": {
                      "start": {
                        "line": 210,
                        "column": 24
                      },
                      "end": {
                        "line": 210,
                        "column": 30
                      }
                    },
                    "name": "object"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 9605,
                  "end": 9771,
                  "loc": {
                    "start": {
                      "line": 210,
                      "column": 32
                    },
                    "end": {
                      "line": 216,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 9615,
                      "end": 9742,
                      "loc": {
                        "start": {
                          "line": 211,
                          "column": 8
                        },
                        "end": {
                          "line": 214,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 9615,
                        "end": 9741,
                        "loc": {
                          "start": {
                            "line": 211,
                            "column": 8
                          },
                          "end": {
                            "line": 214,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 9615,
                          "end": 9639,
                          "loc": {
                            "start": {
                              "line": 211,
                              "column": 8
                            },
                            "end": {
                              "line": 211,
                              "column": 32
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 9615,
                            "end": 9621,
                            "loc": {
                              "start": {
                                "line": 211,
                                "column": 8
                              },
                              "end": {
                                "line": 211,
                                "column": 14
                              }
                            },
                            "name": "object"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 9622,
                            "end": 9639,
                            "loc": {
                              "start": {
                                "line": 211,
                                "column": 15
                              },
                              "end": {
                                "line": 211,
                                "column": 32
                              }
                            },
                            "name": "traverseAncestors"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 9640,
                            "end": 9740,
                            "loc": {
                              "start": {
                                "line": 211,
                                "column": 33
                              },
                              "end": {
                                "line": 214,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 9640,
                                "end": 9648,
                                "loc": {
                                  "start": {
                                    "line": 211,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 211,
                                    "column": 41
                                  }
                                },
                                "name": "ancestor"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 9652,
                              "end": 9740,
                              "loc": {
                                "start": {
                                  "line": 211,
                                  "column": 45
                                },
                                "end": {
                                  "line": 214,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "IfStatement",
                                  "start": 9666,
                                  "end": 9730,
                                  "loc": {
                                    "start": {
                                      "line": 212,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 213,
                                      "column": 34
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 9670,
                                    "end": 9694,
                                    "loc": {
                                      "start": {
                                        "line": 212,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 212,
                                        "column": 40
                                      }
                                    },
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 9670,
                                      "end": 9685,
                                      "loc": {
                                        "start": {
                                          "line": 212,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 212,
                                          "column": 31
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 9670,
                                        "end": 9678,
                                        "loc": {
                                          "start": {
                                            "line": 212,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 212,
                                            "column": 24
                                          }
                                        },
                                        "name": "ancestor"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 9679,
                                        "end": 9685,
                                        "loc": {
                                          "start": {
                                            "line": 212,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 212,
                                            "column": 31
                                          }
                                        },
                                        "name": "parent"
                                      },
                                      "computed": false
                                    },
                                    "operator": "===",
                                    "right": {
                                      "type": "ThisExpression",
                                      "start": 9690,
                                      "end": 9694,
                                      "loc": {
                                        "start": {
                                          "line": 212,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 212,
                                          "column": 40
                                        }
                                      }
                                    }
                                  },
                                  "consequent": {
                                    "type": "ExpressionStatement",
                                    "start": 9712,
                                    "end": 9730,
                                    "loc": {
                                      "start": {
                                        "line": 213,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 213,
                                        "column": 34
                                      }
                                    },
                                    "expression": {
                                      "type": "AssignmentExpression",
                                      "start": 9712,
                                      "end": 9729,
                                      "loc": {
                                        "start": {
                                          "line": 213,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 213,
                                          "column": 33
                                        }
                                      },
                                      "operator": "=",
                                      "left": {
                                        "type": "Identifier",
                                        "start": 9712,
                                        "end": 9718,
                                        "loc": {
                                          "start": {
                                            "line": 213,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 213,
                                            "column": 22
                                          }
                                        },
                                        "name": "object"
                                      },
                                      "right": {
                                        "type": "Identifier",
                                        "start": 9721,
                                        "end": 9729,
                                        "loc": {
                                          "start": {
                                            "line": 213,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 213,
                                            "column": 33
                                          }
                                        },
                                        "name": "ancestor"
                                      }
                                    }
                                  },
                                  "alternate": null
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 9751,
                      "end": 9765,
                      "loc": {
                        "start": {
                          "line": 215,
                          "column": 8
                        },
                        "end": {
                          "line": 215,
                          "column": 22
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 9758,
                        "end": 9764,
                        "loc": {
                          "start": {
                            "line": 215,
                            "column": 15
                          },
                          "end": {
                            "line": 215,
                            "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": 9503,
                  "end": 9572,
                  "loc": {
                    "start": {
                      "line": 209,
                      "column": 4
                    },
                    "end": {
                      "line": 209,
                      "column": 73
                    }
                  },
                  "range": [
                    9503,
                    9572
                  ]
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " Return true if object was added with addToSketch",
                  "start": 9777,
                  "end": 9828,
                  "loc": {
                    "start": {
                      "line": 218,
                      "column": 4
                    },
                    "end": {
                      "line": 218,
                      "column": 55
                    }
                  },
                  "range": [
                    9777,
                    9828
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 9833,
              "end": 9906,
              "loc": {
                "start": {
                  "line": 219,
                  "column": 4
                },
                "end": {
                  "line": 221,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 9833,
                "end": 9843,
                "loc": {
                  "start": {
                    "line": 219,
                    "column": 4
                  },
                  "end": {
                    "line": 219,
                    "column": 14
                  }
                },
                "name": "isOnSketch",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 9843,
                "end": 9906,
                "loc": {
                  "start": {
                    "line": 219,
                    "column": 14
                  },
                  "end": {
                    "line": 221,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 9844,
                    "end": 9850,
                    "loc": {
                      "start": {
                        "line": 219,
                        "column": 15
                      },
                      "end": {
                        "line": 219,
                        "column": 21
                      }
                    },
                    "name": "object"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 9852,
                  "end": 9906,
                  "loc": {
                    "start": {
                      "line": 219,
                      "column": 23
                    },
                    "end": {
                      "line": 221,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 9862,
                      "end": 9900,
                      "loc": {
                        "start": {
                          "line": 220,
                          "column": 8
                        },
                        "end": {
                          "line": 220,
                          "column": 46
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 9869,
                        "end": 9899,
                        "loc": {
                          "start": {
                            "line": 220,
                            "column": 15
                          },
                          "end": {
                            "line": 220,
                            "column": 45
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 9869,
                          "end": 9891,
                          "loc": {
                            "start": {
                              "line": 220,
                              "column": 15
                            },
                            "end": {
                              "line": 220,
                              "column": 37
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 9869,
                            "end": 9887,
                            "loc": {
                              "start": {
                                "line": 220,
                                "column": 15
                              },
                              "end": {
                                "line": 220,
                                "column": 33
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 9869,
                              "end": 9873,
                              "loc": {
                                "start": {
                                  "line": 220,
                                  "column": 15
                                },
                                "end": {
                                  "line": 220,
                                  "column": 19
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9874,
                              "end": 9887,
                              "loc": {
                                "start": {
                                  "line": 220,
                                  "column": 20
                                },
                                "end": {
                                  "line": 220,
                                  "column": 33
                                }
                              },
                              "name": "sketchObjects"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 9888,
                            "end": 9891,
                            "loc": {
                              "start": {
                                "line": 220,
                                "column": 34
                              },
                              "end": {
                                "line": 220,
                                "column": 37
                              }
                            },
                            "name": "has"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 9892,
                            "end": 9898,
                            "loc": {
                              "start": {
                                "line": 220,
                                "column": 38
                              },
                              "end": {
                                "line": 220,
                                "column": 44
                              }
                            },
                            "name": "object"
                          }
                        ]
                      }
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " Return true if object was added with addToSketch",
                  "start": 9777,
                  "end": 9828,
                  "loc": {
                    "start": {
                      "line": 218,
                      "column": 4
                    },
                    "end": {
                      "line": 218,
                      "column": 55
                    }
                  },
                  "range": [
                    9777,
                    9828
                  ]
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " Add auxiliary objects which shouldn't physically be on the sketch",
                  "start": 9912,
                  "end": 9980,
                  "loc": {
                    "start": {
                      "line": 223,
                      "column": 4
                    },
                    "end": {
                      "line": 223,
                      "column": 72
                    }
                  },
                  "range": [
                    9912,
                    9980
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " These objects will be displayed in sketch coordinates but not returned from getObjectsOnSketch",
                  "start": 9985,
                  "end": 10082,
                  "loc": {
                    "start": {
                      "line": 224,
                      "column": 4
                    },
                    "end": {
                      "line": 224,
                      "column": 101
                    }
                  },
                  "range": [
                    9985,
                    10082
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " Example of such objects: sketch's grid, preview line segment for polyline being created",
                  "start": 10087,
                  "end": 10177,
                  "loc": {
                    "start": {
                      "line": 225,
                      "column": 4
                    },
                    "end": {
                      "line": 225,
                      "column": 94
                    }
                  },
                  "range": [
                    10087,
                    10177
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 10182,
              "end": 10883,
              "loc": {
                "start": {
                  "line": 226,
                  "column": 4
                },
                "end": {
                  "line": 238,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 10182,
                "end": 10194,
                "loc": {
                  "start": {
                    "line": 226,
                    "column": 4
                  },
                  "end": {
                    "line": 226,
                    "column": 16
                  }
                },
                "name": "addAuxObject",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 10194,
                "end": 10883,
                "loc": {
                  "start": {
                    "line": 226,
                    "column": 16
                  },
                  "end": {
                    "line": 238,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 10195,
                    "end": 10202,
                    "loc": {
                      "start": {
                        "line": 226,
                        "column": 17
                      },
                      "end": {
                        "line": 226,
                        "column": 24
                      }
                    },
                    "name": "objects",
                    "leadingComments": null,
                    "trailingComments": [
                      {
                        "type": "Block",
                        "value": ", options",
                        "start": 10202,
                        "end": 10215,
                        "loc": {
                          "start": {
                            "line": 226,
                            "column": 24
                          },
                          "end": {
                            "line": 226,
                            "column": 37
                          }
                        },
                        "range": [
                          10202,
                          10215
                        ]
                      }
                    ]
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 10217,
                  "end": 10883,
                  "loc": {
                    "start": {
                      "line": 226,
                      "column": 39
                    },
                    "end": {
                      "line": 238,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 10227,
                      "end": 10256,
                      "loc": {
                        "start": {
                          "line": 227,
                          "column": 8
                        },
                        "end": {
                          "line": 227,
                          "column": 37
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 10227,
                        "end": 10255,
                        "loc": {
                          "start": {
                            "line": 227,
                            "column": 8
                          },
                          "end": {
                            "line": 227,
                            "column": 36
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 10227,
                          "end": 10234,
                          "loc": {
                            "start": {
                              "line": 227,
                              "column": 8
                            },
                            "end": {
                              "line": 227,
                              "column": 15
                            }
                          },
                          "name": "objects",
                          "leadingComments": null
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 10237,
                          "end": 10255,
                          "loc": {
                            "start": {
                              "line": 227,
                              "column": 18
                            },
                            "end": {
                              "line": 227,
                              "column": 36
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 10237,
                            "end": 10246,
                            "loc": {
                              "start": {
                                "line": 227,
                                "column": 18
                              },
                              "end": {
                                "line": 227,
                                "column": 27
                              }
                            },
                            "object": {
                              "type": "ArrayExpression",
                              "start": 10237,
                              "end": 10239,
                              "loc": {
                                "start": {
                                  "line": 227,
                                  "column": 18
                                },
                                "end": {
                                  "line": 227,
                                  "column": 20
                                }
                              },
                              "elements": []
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 10240,
                              "end": 10246,
                              "loc": {
                                "start": {
                                  "line": 227,
                                  "column": 21
                                },
                                "end": {
                                  "line": 227,
                                  "column": 27
                                }
                              },
                              "name": "concat"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 10247,
                              "end": 10254,
                              "loc": {
                                "start": {
                                  "line": 227,
                                  "column": 28
                                },
                                "end": {
                                  "line": 227,
                                  "column": 35
                                }
                              },
                              "name": "objects"
                            }
                          ]
                        },
                        "leadingComments": null
                      },
                      "leadingComments": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 10265,
                      "end": 10303,
                      "loc": {
                        "start": {
                          "line": 228,
                          "column": 8
                        },
                        "end": {
                          "line": 228,
                          "column": 46
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 10269,
                          "end": 10302,
                          "loc": {
                            "start": {
                              "line": 228,
                              "column": 12
                            },
                            "end": {
                              "line": 228,
                              "column": 45
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 10269,
                            "end": 10273,
                            "loc": {
                              "start": {
                                "line": 228,
                                "column": 12
                              },
                              "end": {
                                "line": 228,
                                "column": 16
                              }
                            },
                            "name": "view"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 10276,
                            "end": 10302,
                            "loc": {
                              "start": {
                                "line": 228,
                                "column": 19
                              },
                              "end": {
                                "line": 228,
                                "column": 45
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 10276,
                              "end": 10289,
                              "loc": {
                                "start": {
                                  "line": 228,
                                  "column": 19
                                },
                                "end": {
                                  "line": 228,
                                  "column": 32
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 10276,
                                "end": 10280,
                                "loc": {
                                  "start": {
                                    "line": 228,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 228,
                                    "column": 23
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 10281,
                                "end": 10289,
                                "loc": {
                                  "start": {
                                    "line": 228,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 228,
                                    "column": 32
                                  }
                                },
                                "name": "sketcher"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 10290,
                              "end": 10302,
                              "loc": {
                                "start": {
                                  "line": 228,
                                  "column": 33
                                },
                                "end": {
                                  "line": 228,
                                  "column": 45
                                }
                              },
                              "name": "__parentView"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var",
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " we can't automatically remove objects from the sketch because",
                          "start": 10312,
                          "end": 10376,
                          "loc": {
                            "start": {
                              "line": 229,
                              "column": 8
                            },
                            "end": {
                              "line": 229,
                              "column": 72
                            }
                          },
                          "range": [
                            10312,
                            10376
                          ]
                        },
                        {
                          "type": "CommentLine",
                          "value": " it's an asynchronous action; this function should be synchronous",
                          "start": 10385,
                          "end": 10452,
                          "loc": {
                            "start": {
                              "line": 230,
                              "column": 8
                            },
                            "end": {
                              "line": 230,
                              "column": 75
                            }
                          },
                          "range": [
                            10385,
                            10452
                          ]
                        }
                      ]
                    },
                    {
                      "type": "IfStatement",
                      "start": 10461,
                      "end": 10624,
                      "loc": {
                        "start": {
                          "line": 231,
                          "column": 8
                        },
                        "end": {
                          "line": 232,
                          "column": 85
                        }
                      },
                      "test": {
                        "type": "CallExpression",
                        "start": 10465,
                        "end": 10537,
                        "loc": {
                          "start": {
                            "line": 231,
                            "column": 12
                          },
                          "end": {
                            "line": 231,
                            "column": 84
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 10465,
                          "end": 10477,
                          "loc": {
                            "start": {
                              "line": 231,
                              "column": 12
                            },
                            "end": {
                              "line": 231,
                              "column": 24
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 10465,
                            "end": 10472,
                            "loc": {
                              "start": {
                                "line": 231,
                                "column": 12
                              },
                              "end": {
                                "line": 231,
                                "column": 19
                              }
                            },
                            "name": "objects",
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 10473,
                            "end": 10477,
                            "loc": {
                              "start": {
                                "line": 231,
                                "column": 20
                              },
                              "end": {
                                "line": 231,
                                "column": 24
                              }
                            },
                            "name": "some"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "arguments": [
                          {
                            "type": "FunctionExpression",
                            "start": 10478,
                            "end": 10530,
                            "loc": {
                              "start": {
                                "line": 231,
                                "column": 25
                              },
                              "end": {
                                "line": 231,
                                "column": 77
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 10487,
                                "end": 10493,
                                "loc": {
                                  "start": {
                                    "line": 231,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 231,
                                    "column": 40
                                  }
                                },
                                "name": "object"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 10495,
                              "end": 10530,
                              "loc": {
                                "start": {
                                  "line": 231,
                                  "column": 42
                                },
                                "end": {
                                  "line": 231,
                                  "column": 77
                                }
                              },
                              "body": [
                                {
                                  "type": "ReturnStatement",
                                  "start": 10497,
                                  "end": 10528,
                                  "loc": {
                                    "start": {
                                      "line": 231,
                                      "column": 44
                                    },
                                    "end": {
                                      "line": 231,
                                      "column": 75
                                    }
                                  },
                                  "argument": {
                                    "type": "CallExpression",
                                    "start": 10504,
                                    "end": 10527,
                                    "loc": {
                                      "start": {
                                        "line": 231,
                                        "column": 51
                                      },
                                      "end": {
                                        "line": 231,
                                        "column": 74
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 10504,
                                      "end": 10519,
                                      "loc": {
                                        "start": {
                                          "line": 231,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 231,
                                          "column": 66
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 10504,
                                        "end": 10508,
                                        "loc": {
                                          "start": {
                                            "line": 231,
                                            "column": 51
                                          },
                                          "end": {
                                            "line": 231,
                                            "column": 55
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 10509,
                                        "end": 10519,
                                        "loc": {
                                          "start": {
                                            "line": 231,
                                            "column": 56
                                          },
                                          "end": {
                                            "line": 231,
                                            "column": 66
                                          }
                                        },
                                        "name": "isOnSketch"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 10520,
                                        "end": 10526,
                                        "loc": {
                                          "start": {
                                            "line": 231,
                                            "column": 67
                                          },
                                          "end": {
                                            "line": 231,
                                            "column": 73
                                          }
                                        },
                                        "name": "object"
                                      }
                                    ]
                                  }
                                }
                              ]
                            }
                          },
                          {
                            "type": "ThisExpression",
                            "start": 10532,
                            "end": 10536,
                            "loc": {
                              "start": {
                                "line": 231,
                                "column": 79
                              },
                              "end": {
                                "line": 231,
                                "column": 83
                              }
                            }
                          }
                        ],
                        "leadingComments": null
                      },
                      "consequent": {
                        "type": "ThrowStatement",
                        "start": 10551,
                        "end": 10624,
                        "loc": {
                          "start": {
                            "line": 232,
                            "column": 12
                          },
                          "end": {
                            "line": 232,
                            "column": 85
                          }
                        },
                        "argument": {
                          "type": "Literal",
                          "start": 10557,
                          "end": 10623,
                          "loc": {
                            "start": {
                              "line": 232,
                              "column": 18
                            },
                            "end": {
                              "line": 232,
                              "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": 10312,
                          "end": 10376,
                          "loc": {
                            "start": {
                              "line": 229,
                              "column": 8
                            },
                            "end": {
                              "line": 229,
                              "column": 72
                            }
                          },
                          "range": [
                            10312,
                            10376
                          ]
                        },
                        {
                          "type": "CommentLine",
                          "value": " it's an asynchronous action; this function should be synchronous",
                          "start": 10385,
                          "end": 10452,
                          "loc": {
                            "start": {
                              "line": 230,
                              "column": 8
                            },
                            "end": {
                              "line": 230,
                              "column": 75
                            }
                          },
                          "range": [
                            10385,
                            10452
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 10633,
                      "end": 10877,
                      "loc": {
                        "start": {
                          "line": 233,
                          "column": 8
                        },
                        "end": {
                          "line": 237,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 10633,
                        "end": 10876,
                        "loc": {
                          "start": {
                            "line": 233,
                            "column": 8
                          },
                          "end": {
                            "line": 237,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 10633,
                          "end": 10648,
                          "loc": {
                            "start": {
                              "line": 233,
                              "column": 8
                            },
                            "end": {
                              "line": 233,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 10633,
                            "end": 10640,
                            "loc": {
                              "start": {
                                "line": 233,
                                "column": 8
                              },
                              "end": {
                                "line": 233,
                                "column": 15
                              }
                            },
                            "name": "objects"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 10641,
                            "end": 10648,
                            "loc": {
                              "start": {
                                "line": 233,
                                "column": 16
                              },
                              "end": {
                                "line": 233,
                                "column": 23
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 10649,
                            "end": 10875,
                            "loc": {
                              "start": {
                                "line": 233,
                                "column": 24
                              },
                              "end": {
                                "line": 237,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 10649,
                                "end": 10652,
                                "loc": {
                                  "start": {
                                    "line": 233,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 233,
                                    "column": 27
                                  }
                                },
                                "name": "obj"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 10656,
                              "end": 10875,
                              "loc": {
                                "start": {
                                  "line": 233,
                                  "column": 31
                                },
                                "end": {
                                  "line": 237,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 10670,
                                  "end": 10684,
                                  "loc": {
                                    "start": {
                                      "line": 234,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 234,
                                      "column": 26
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 10670,
                                    "end": 10683,
                                    "loc": {
                                      "start": {
                                        "line": 234,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 234,
                                        "column": 25
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 10670,
                                      "end": 10678,
                                      "loc": {
                                        "start": {
                                          "line": 234,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 234,
                                          "column": 20
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 10670,
                                        "end": 10674,
                                        "loc": {
                                          "start": {
                                            "line": 234,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 234,
                                            "column": 16
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 10675,
                                        "end": 10678,
                                        "loc": {
                                          "start": {
                                            "line": 234,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 234,
                                            "column": 20
                                          }
                                        },
                                        "name": "add"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 10679,
                                        "end": 10682,
                                        "loc": {
                                          "start": {
                                            "line": 234,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 234,
                                            "column": 24
                                          }
                                        },
                                        "name": "obj"
                                      }
                                    ]
                                  },
                                  "trailingComments": [
                                    {
                                      "type": "CommentLine",
                                      "value": "note: some auxilliary objects have custom visualization system (e.g. sketch grid and box)",
                                      "start": 10697,
                                      "end": 10788,
                                      "loc": {
                                        "start": {
                                          "line": 235,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 235,
                                          "column": 103
                                        }
                                      },
                                      "range": [
                                        10697,
                                        10788
                                      ]
                                    }
                                  ]
                                },
                                {
                                  "type": "TryStatement",
                                  "start": 10801,
                                  "end": 10865,
                                  "loc": {
                                    "start": {
                                      "line": 236,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 236,
                                      "column": 76
                                    }
                                  },
                                  "block": {
                                    "type": "BlockStatement",
                                    "start": 10805,
                                    "end": 10851,
                                    "loc": {
                                      "start": {
                                        "line": 236,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 236,
                                        "column": 62
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 10807,
                                        "end": 10849,
                                        "loc": {
                                          "start": {
                                            "line": 236,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 236,
                                            "column": 60
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 10807,
                                          "end": 10848,
                                          "loc": {
                                            "start": {
                                              "line": 236,
                                              "column": 18
                                            },
                                            "end": {
                                              "line": 236,
                                              "column": 59
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 10807,
                                            "end": 10837,
                                            "loc": {
                                              "start": {
                                                "line": 236,
                                                "column": 18
                                              },
                                              "end": {
                                                "line": 236,
                                                "column": 48
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 10807,
                                              "end": 10815,
                                              "loc": {
                                                "start": {
                                                  "line": 236,
                                                  "column": 18
                                                },
                                                "end": {
                                                  "line": 236,
                                                  "column": 26
                                                }
                                              },
                                              "name": "Sketcher",
                                              "leadingComments": null
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 10816,
                                              "end": 10837,
                                              "loc": {
                                                "start": {
                                                  "line": 236,
                                                  "column": 27
                                                },
                                                "end": {
                                                  "line": 236,
                                                  "column": 48
                                                }
                                              },
                                              "name": "registerVisualization"
                                            },
                                            "computed": false,
                                            "leadingComments": null
                                          },
                                          "arguments": [
                                            {
                                              "type": "Identifier",
                                              "start": 10838,
                                              "end": 10842,
                                              "loc": {
                                                "start": {
                                                  "line": 236,
                                                  "column": 49
                                                },
                                                "end": {
                                                  "line": 236,
                                                  "column": 53
                                                }
                                              },
                                              "name": "view"
                                            },
                                            {
                                              "type": "Identifier",
                                              "start": 10844,
                                              "end": 10847,
                                              "loc": {
                                                "start": {
                                                  "line": 236,
                                                  "column": 55
                                                },
                                                "end": {
                                                  "line": 236,
                                                  "column": 58
                                                }
                                              },
                                              "name": "obj"
                                            }
                                          ],
                                          "leadingComments": null
                                        },
                                        "leadingComments": null
                                      }
                                    ],
                                    "leadingComments": null
                                  },
                                  "handler": {
                                    "type": "CatchClause",
                                    "start": 10852,
                                    "end": 10865,
                                    "loc": {
                                      "start": {
                                        "line": 236,
                                        "column": 63
                                      },
                                      "end": {
                                        "line": 236,
                                        "column": 76
                                      }
                                    },
                                    "param": {
                                      "type": "Identifier",
                                      "start": 10858,
                                      "end": 10861,
                                      "loc": {
                                        "start": {
                                          "line": 236,
                                          "column": 69
                                        },
                                        "end": {
                                          "line": 236,
                                          "column": 72
                                        }
                                      },
                                      "name": "err"
                                    },
                                    "body": {
                                      "type": "BlockStatement",
                                      "start": 10863,
                                      "end": 10865,
                                      "loc": {
                                        "start": {
                                          "line": 236,
                                          "column": 74
                                        },
                                        "end": {
                                          "line": 236,
                                          "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": 10697,
                                      "end": 10788,
                                      "loc": {
                                        "start": {
                                          "line": 235,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 235,
                                          "column": 103
                                        }
                                      },
                                      "range": [
                                        10697,
                                        10788
                                      ]
                                    }
                                  ]
                                }
                              ]
                            }
                          }
                        ]
                      }
                    }
                  ],
                  "leadingComments": [
                    {
                      "type": "Block",
                      "value": ", options",
                      "start": 10202,
                      "end": 10215,
                      "loc": {
                        "start": {
                          "line": 226,
                          "column": 24
                        },
                        "end": {
                          "line": 226,
                          "column": 37
                        }
                      },
                      "range": [
                        10202,
                        10215
                      ]
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " Add auxiliary objects which shouldn't physically be on the sketch",
                  "start": 9912,
                  "end": 9980,
                  "loc": {
                    "start": {
                      "line": 223,
                      "column": 4
                    },
                    "end": {
                      "line": 223,
                      "column": 72
                    }
                  },
                  "range": [
                    9912,
                    9980
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " These objects will be displayed in sketch coordinates but not returned from getObjectsOnSketch",
                  "start": 9985,
                  "end": 10082,
                  "loc": {
                    "start": {
                      "line": 224,
                      "column": 4
                    },
                    "end": {
                      "line": 224,
                      "column": 101
                    }
                  },
                  "range": [
                    9985,
                    10082
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " Example of such objects: sketch's grid, preview line segment for polyline being created",
                  "start": 10087,
                  "end": 10177,
                  "loc": {
                    "start": {
                      "line": 225,
                      "column": 4
                    },
                    "end": {
                      "line": 225,
                      "column": 94
                    }
                  },
                  "range": [
                    10087,
                    10177
                  ]
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " Remove objects previously added with addAuxObject",
                  "start": 10889,
                  "end": 10941,
                  "loc": {
                    "start": {
                      "line": 240,
                      "column": 4
                    },
                    "end": {
                      "line": 240,
                      "column": 56
                    }
                  },
                  "range": [
                    10889,
                    10941
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 10946,
              "end": 11151,
              "loc": {
                "start": {
                  "line": 241,
                  "column": 4
                },
                "end": {
                  "line": 247,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 10946,
                "end": 10961,
                "loc": {
                  "start": {
                    "line": 241,
                    "column": 4
                  },
                  "end": {
                    "line": 241,
                    "column": 19
                  }
                },
                "name": "removeAuxObject",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 10961,
                "end": 11151,
                "loc": {
                  "start": {
                    "line": 241,
                    "column": 19
                  },
                  "end": {
                    "line": 247,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 10962,
                    "end": 10969,
                    "loc": {
                      "start": {
                        "line": 241,
                        "column": 20
                      },
                      "end": {
                        "line": 241,
                        "column": 27
                      }
                    },
                    "name": "objects",
                    "leadingComments": null,
                    "trailingComments": [
                      {
                        "type": "Block",
                        "value": ", options",
                        "start": 10969,
                        "end": 10982,
                        "loc": {
                          "start": {
                            "line": 241,
                            "column": 27
                          },
                          "end": {
                            "line": 241,
                            "column": 40
                          }
                        },
                        "range": [
                          10969,
                          10982
                        ]
                      }
                    ]
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 10984,
                  "end": 11151,
                  "loc": {
                    "start": {
                      "line": 241,
                      "column": 42
                    },
                    "end": {
                      "line": 247,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 10994,
                      "end": 11023,
                      "loc": {
                        "start": {
                          "line": 242,
                          "column": 8
                        },
                        "end": {
                          "line": 242,
                          "column": 37
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 10994,
                        "end": 11022,
                        "loc": {
                          "start": {
                            "line": 242,
                            "column": 8
                          },
                          "end": {
                            "line": 242,
                            "column": 36
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 10994,
                          "end": 11001,
                          "loc": {
                            "start": {
                              "line": 242,
                              "column": 8
                            },
                            "end": {
                              "line": 242,
                              "column": 15
                            }
                          },
                          "name": "objects",
                          "leadingComments": null
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 11004,
                          "end": 11022,
                          "loc": {
                            "start": {
                              "line": 242,
                              "column": 18
                            },
                            "end": {
                              "line": 242,
                              "column": 36
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 11004,
                            "end": 11013,
                            "loc": {
                              "start": {
                                "line": 242,
                                "column": 18
                              },
                              "end": {
                                "line": 242,
                                "column": 27
                              }
                            },
                            "object": {
                              "type": "ArrayExpression",
                              "start": 11004,
                              "end": 11006,
                              "loc": {
                                "start": {
                                  "line": 242,
                                  "column": 18
                                },
                                "end": {
                                  "line": 242,
                                  "column": 20
                                }
                              },
                              "elements": []
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11007,
                              "end": 11013,
                              "loc": {
                                "start": {
                                  "line": 242,
                                  "column": 21
                                },
                                "end": {
                                  "line": 242,
                                  "column": 27
                                }
                              },
                              "name": "concat"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 11014,
                              "end": 11021,
                              "loc": {
                                "start": {
                                  "line": 242,
                                  "column": 28
                                },
                                "end": {
                                  "line": 242,
                                  "column": 35
                                }
                              },
                              "name": "objects"
                            }
                          ]
                        },
                        "leadingComments": null
                      },
                      "leadingComments": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 11032,
                      "end": 11070,
                      "loc": {
                        "start": {
                          "line": 243,
                          "column": 8
                        },
                        "end": {
                          "line": 243,
                          "column": 46
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 11036,
                          "end": 11069,
                          "loc": {
                            "start": {
                              "line": 243,
                              "column": 12
                            },
                            "end": {
                              "line": 243,
                              "column": 45
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 11036,
                            "end": 11040,
                            "loc": {
                              "start": {
                                "line": 243,
                                "column": 12
                              },
                              "end": {
                                "line": 243,
                                "column": 16
                              }
                            },
                            "name": "view"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 11043,
                            "end": 11069,
                            "loc": {
                              "start": {
                                "line": 243,
                                "column": 19
                              },
                              "end": {
                                "line": 243,
                                "column": 45
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 11043,
                              "end": 11056,
                              "loc": {
                                "start": {
                                  "line": 243,
                                  "column": 19
                                },
                                "end": {
                                  "line": 243,
                                  "column": 32
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 11043,
                                "end": 11047,
                                "loc": {
                                  "start": {
                                    "line": 243,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 243,
                                    "column": 23
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11048,
                                "end": 11056,
                                "loc": {
                                  "start": {
                                    "line": 243,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 243,
                                    "column": 32
                                  }
                                },
                                "name": "sketcher"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11057,
                              "end": 11069,
                              "loc": {
                                "start": {
                                  "line": 243,
                                  "column": 33
                                },
                                "end": {
                                  "line": 243,
                                  "column": 45
                                }
                              },
                              "name": "__parentView"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 11079,
                      "end": 11145,
                      "loc": {
                        "start": {
                          "line": 244,
                          "column": 8
                        },
                        "end": {
                          "line": 246,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 11079,
                        "end": 11144,
                        "loc": {
                          "start": {
                            "line": 244,
                            "column": 8
                          },
                          "end": {
                            "line": 246,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 11079,
                          "end": 11094,
                          "loc": {
                            "start": {
                              "line": 244,
                              "column": 8
                            },
                            "end": {
                              "line": 244,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 11079,
                            "end": 11086,
                            "loc": {
                              "start": {
                                "line": 244,
                                "column": 8
                              },
                              "end": {
                                "line": 244,
                                "column": 15
                              }
                            },
                            "name": "objects"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11087,
                            "end": 11094,
                            "loc": {
                              "start": {
                                "line": 244,
                                "column": 16
                              },
                              "end": {
                                "line": 244,
                                "column": 23
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 11095,
                            "end": 11143,
                            "loc": {
                              "start": {
                                "line": 244,
                                "column": 24
                              },
                              "end": {
                                "line": 246,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 11095,
                                "end": 11098,
                                "loc": {
                                  "start": {
                                    "line": 244,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 244,
                                    "column": 27
                                  }
                                },
                                "name": "obj"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 11102,
                              "end": 11143,
                              "loc": {
                                "start": {
                                  "line": 244,
                                  "column": 31
                                },
                                "end": {
                                  "line": 246,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 11116,
                                  "end": 11133,
                                  "loc": {
                                    "start": {
                                      "line": 245,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 245,
                                      "column": 29
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 11116,
                                    "end": 11132,
                                    "loc": {
                                      "start": {
                                        "line": 245,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 245,
                                        "column": 28
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 11116,
                                      "end": 11127,
                                      "loc": {
                                        "start": {
                                          "line": 245,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 245,
                                          "column": 23
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 11116,
                                        "end": 11120,
                                        "loc": {
                                          "start": {
                                            "line": 245,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 245,
                                            "column": 16
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 11121,
                                        "end": 11127,
                                        "loc": {
                                          "start": {
                                            "line": 245,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 245,
                                            "column": 23
                                          }
                                        },
                                        "name": "remove"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 11128,
                                        "end": 11131,
                                        "loc": {
                                          "start": {
                                            "line": 245,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 245,
                                            "column": 27
                                          }
                                        },
                                        "name": "obj"
                                      }
                                    ]
                                  }
                                }
                              ]
                            }
                          }
                        ]
                      }
                    }
                  ],
                  "leadingComments": [
                    {
                      "type": "Block",
                      "value": ", options",
                      "start": 10969,
                      "end": 10982,
                      "loc": {
                        "start": {
                          "line": 241,
                          "column": 27
                        },
                        "end": {
                          "line": 241,
                          "column": 40
                        }
                      },
                      "range": [
                        10969,
                        10982
                      ]
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " Remove objects previously added with addAuxObject",
                  "start": 10889,
                  "end": 10941,
                  "loc": {
                    "start": {
                      "line": 240,
                      "column": 4
                    },
                    "end": {
                      "line": 240,
                      "column": 56
                    }
                  },
                  "range": [
                    10889,
                    10941
                  ]
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " customize ClassCadObject interface add/remove member function to track sketchObjects",
                  "start": 11157,
                  "end": 11244,
                  "loc": {
                    "start": {
                      "line": 249,
                      "column": 4
                    },
                    "end": {
                      "line": 249,
                      "column": 91
                    }
                  },
                  "range": [
                    11157,
                    11244
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 11249,
              "end": 11476,
              "loc": {
                "start": {
                  "line": 250,
                  "column": 4
                },
                "end": {
                  "line": 254,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 11249,
                "end": 11258,
                "loc": {
                  "start": {
                    "line": 250,
                    "column": 4
                  },
                  "end": {
                    "line": 250,
                    "column": 13
                  }
                },
                "name": "addMember",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 11258,
                "end": 11476,
                "loc": {
                  "start": {
                    "line": 250,
                    "column": 13
                  },
                  "end": {
                    "line": 254,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 11259,
                    "end": 11265,
                    "loc": {
                      "start": {
                        "line": 250,
                        "column": 14
                      },
                      "end": {
                        "line": 250,
                        "column": 20
                      }
                    },
                    "name": "member"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 11267,
                  "end": 11476,
                  "loc": {
                    "start": {
                      "line": 250,
                      "column": 22
                    },
                    "end": {
                      "line": 254,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 11277,
                      "end": 11335,
                      "loc": {
                        "start": {
                          "line": 251,
                          "column": 8
                        },
                        "end": {
                          "line": 251,
                          "column": 66
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 11277,
                        "end": 11334,
                        "loc": {
                          "start": {
                            "line": 251,
                            "column": 8
                          },
                          "end": {
                            "line": 251,
                            "column": 65
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 11277,
                          "end": 11317,
                          "loc": {
                            "start": {
                              "line": 251,
                              "column": 8
                            },
                            "end": {
                              "line": 251,
                              "column": 48
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 11277,
                            "end": 11311,
                            "loc": {
                              "start": {
                                "line": 251,
                                "column": 8
                              },
                              "end": {
                                "line": 251,
                                "column": 42
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 11277,
                              "end": 11301,
                              "loc": {
                                "start": {
                                  "line": 251,
                                  "column": 8
                                },
                                "end": {
                                  "line": 251,
                                  "column": 32
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 11277,
                                "end": 11291,
                                "loc": {
                                  "start": {
                                    "line": 251,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 251,
                                    "column": 22
                                  }
                                },
                                "name": "ClassCadObject"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11292,
                                "end": 11301,
                                "loc": {
                                  "start": {
                                    "line": 251,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 251,
                                    "column": 32
                                  }
                                },
                                "name": "prototype"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11302,
                              "end": 11311,
                              "loc": {
                                "start": {
                                  "line": 251,
                                  "column": 33
                                },
                                "end": {
                                  "line": 251,
                                  "column": 42
                                }
                              },
                              "name": "addMember"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11312,
                            "end": 11317,
                            "loc": {
                              "start": {
                                "line": 251,
                                "column": 43
                              },
                              "end": {
                                "line": 251,
                                "column": 48
                              }
                            },
                            "name": "apply"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ThisExpression",
                            "start": 11318,
                            "end": 11322,
                            "loc": {
                              "start": {
                                "line": 251,
                                "column": 49
                              },
                              "end": {
                                "line": 251,
                                "column": 53
                              }
                            }
                          },
                          {
                            "type": "Identifier",
                            "start": 11324,
                            "end": 11333,
                            "loc": {
                              "start": {
                                "line": 251,
                                "column": 55
                              },
                              "end": {
                                "line": 251,
                                "column": 64
                              }
                            },
                            "name": "arguments"
                          }
                        ]
                      }
                    },
                    {
                      "type": "IfStatement",
                      "start": 11344,
                      "end": 11470,
                      "loc": {
                        "start": {
                          "line": 252,
                          "column": 8
                        },
                        "end": {
                          "line": 253,
                          "column": 73
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 11348,
                        "end": 11395,
                        "loc": {
                          "start": {
                            "line": 252,
                            "column": 12
                          },
                          "end": {
                            "line": 252,
                            "column": 59
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 11348,
                          "end": 11379,
                          "loc": {
                            "start": {
                              "line": 252,
                              "column": 12
                            },
                            "end": {
                              "line": 252,
                              "column": 43
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 11348,
                            "end": 11374,
                            "loc": {
                              "start": {
                                "line": 252,
                                "column": 12
                              },
                              "end": {
                                "line": 252,
                                "column": 38
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 11348,
                              "end": 11363,
                              "loc": {
                                "start": {
                                  "line": 252,
                                  "column": 12
                                },
                                "end": {
                                  "line": 252,
                                  "column": 27
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 11348,
                                "end": 11354,
                                "loc": {
                                  "start": {
                                    "line": 252,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 252,
                                    "column": 18
                                  }
                                },
                                "name": "member"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11355,
                                "end": 11363,
                                "loc": {
                                  "start": {
                                    "line": 252,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 252,
                                    "column": 27
                                  }
                                },
                                "name": "userData"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11364,
                              "end": 11374,
                              "loc": {
                                "start": {
                                  "line": 252,
                                  "column": 28
                                },
                                "end": {
                                  "line": 252,
                                  "column": 38
                                }
                              },
                              "name": "memberInfo"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11375,
                            "end": 11379,
                            "loc": {
                              "start": {
                                "line": 252,
                                "column": 39
                              },
                              "end": {
                                "line": 252,
                                "column": 43
                              }
                            },
                            "name": "type"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Literal",
                          "start": 11384,
                          "end": 11395,
                          "loc": {
                            "start": {
                              "line": 252,
                              "column": 48
                            },
                            "end": {
                              "line": 252,
                              "column": 59
                            }
                          },
                          "value": "objectMem",
                          "rawValue": "objectMem",
                          "raw": "'objectMem'"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 11409,
                        "end": 11470,
                        "loc": {
                          "start": {
                            "line": 253,
                            "column": 12
                          },
                          "end": {
                            "line": 253,
                            "column": 73
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 11409,
                          "end": 11469,
                          "loc": {
                            "start": {
                              "line": 253,
                              "column": 12
                            },
                            "end": {
                              "line": 253,
                              "column": 72
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 11409,
                            "end": 11425,
                            "loc": {
                              "start": {
                                "line": 253,
                                "column": 12
                              },
                              "end": {
                                "line": 253,
                                "column": 28
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 11409,
                              "end": 11413,
                              "loc": {
                                "start": {
                                  "line": 253,
                                  "column": 12
                                },
                                "end": {
                                  "line": 253,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11414,
                              "end": 11425,
                              "loc": {
                                "start": {
                                  "line": 253,
                                  "column": 17
                                },
                                "end": {
                                  "line": 253,
                                  "column": 28
                                }
                              },
                              "name": "addToSketch"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 11426,
                              "end": 11432,
                              "loc": {
                                "start": {
                                  "line": 253,
                                  "column": 29
                                },
                                "end": {
                                  "line": 253,
                                  "column": 35
                                }
                              },
                              "name": "member"
                            },
                            {
                              "type": "ObjectExpression",
                              "start": 11434,
                              "end": 11468,
                              "loc": {
                                "start": {
                                  "line": 253,
                                  "column": 37
                                },
                                "end": {
                                  "line": 253,
                                  "column": 71
                                }
                              },
                              "properties": [
                                {
                                  "type": "Property",
                                  "start": 11435,
                                  "end": 11450,
                                  "loc": {
                                    "start": {
                                      "line": 253,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 253,
                                      "column": 53
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 11435,
                                    "end": 11443,
                                    "loc": {
                                      "start": {
                                        "line": 253,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 253,
                                        "column": 46
                                      }
                                    },
                                    "name": "onServer"
                                  },
                                  "value": {
                                    "type": "Literal",
                                    "start": 11445,
                                    "end": 11450,
                                    "loc": {
                                      "start": {
                                        "line": 253,
                                        "column": 48
                                      },
                                      "end": {
                                        "line": 253,
                                        "column": 53
                                      }
                                    },
                                    "value": false,
                                    "rawValue": false,
                                    "raw": "false"
                                  },
                                  "kind": "init"
                                },
                                {
                                  "type": "Property",
                                  "start": 11452,
                                  "end": 11467,
                                  "loc": {
                                    "start": {
                                      "line": 253,
                                      "column": 55
                                    },
                                    "end": {
                                      "line": 253,
                                      "column": 70
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 11452,
                                    "end": 11460,
                                    "loc": {
                                      "start": {
                                        "line": 253,
                                        "column": 55
                                      },
                                      "end": {
                                        "line": 253,
                                        "column": 63
                                      }
                                    },
                                    "name": "onClient"
                                  },
                                  "value": {
                                    "type": "Literal",
                                    "start": 11462,
                                    "end": 11467,
                                    "loc": {
                                      "start": {
                                        "line": 253,
                                        "column": 65
                                      },
                                      "end": {
                                        "line": 253,
                                        "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": 11157,
                  "end": 11244,
                  "loc": {
                    "start": {
                      "line": 249,
                      "column": 4
                    },
                    "end": {
                      "line": 249,
                      "column": 91
                    }
                  },
                  "range": [
                    11157,
                    11244
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 11482,
              "end": 11712,
              "loc": {
                "start": {
                  "line": 256,
                  "column": 4
                },
                "end": {
                  "line": 260,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 11482,
                "end": 11506,
                "loc": {
                  "start": {
                    "line": 256,
                    "column": 4
                  },
                  "end": {
                    "line": 256,
                    "column": 28
                  }
                },
                "name": "removeSuperfluousMembers"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 11506,
                "end": 11712,
                "loc": {
                  "start": {
                    "line": 256,
                    "column": 28
                  },
                  "end": {
                    "line": 260,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 11509,
                  "end": 11712,
                  "loc": {
                    "start": {
                      "line": 256,
                      "column": 31
                    },
                    "end": {
                      "line": 260,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 11519,
                      "end": 11606,
                      "loc": {
                        "start": {
                          "line": 257,
                          "column": 8
                        },
                        "end": {
                          "line": 257,
                          "column": 95
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 11523,
                          "end": 11605,
                          "loc": {
                            "start": {
                              "line": 257,
                              "column": 12
                            },
                            "end": {
                              "line": 257,
                              "column": 94
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 11523,
                            "end": 11530,
                            "loc": {
                              "start": {
                                "line": 257,
                                "column": 12
                              },
                              "end": {
                                "line": 257,
                                "column": 19
                              }
                            },
                            "name": "members"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 11533,
                            "end": 11605,
                            "loc": {
                              "start": {
                                "line": 257,
                                "column": 22
                              },
                              "end": {
                                "line": 257,
                                "column": 94
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 11533,
                              "end": 11588,
                              "loc": {
                                "start": {
                                  "line": 257,
                                  "column": 22
                                },
                                "end": {
                                  "line": 257,
                                  "column": 77
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 11533,
                                "end": 11582,
                                "loc": {
                                  "start": {
                                    "line": 257,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 257,
                                    "column": 71
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 11533,
                                  "end": 11557,
                                  "loc": {
                                    "start": {
                                      "line": 257,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 257,
                                      "column": 46
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 11533,
                                    "end": 11547,
                                    "loc": {
                                      "start": {
                                        "line": 257,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 257,
                                        "column": 36
                                      }
                                    },
                                    "name": "ClassCadObject"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 11548,
                                    "end": 11557,
                                    "loc": {
                                      "start": {
                                        "line": 257,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 257,
                                        "column": 46
                                      }
                                    },
                                    "name": "prototype"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 11558,
                                  "end": 11582,
                                  "loc": {
                                    "start": {
                                      "line": 257,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 257,
                                      "column": 71
                                    }
                                  },
                                  "name": "removeSuperfluousMembers"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11583,
                                "end": 11588,
                                "loc": {
                                  "start": {
                                    "line": 257,
                                    "column": 72
                                  },
                                  "end": {
                                    "line": 257,
                                    "column": 77
                                  }
                                },
                                "name": "apply"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "ThisExpression",
                                "start": 11589,
                                "end": 11593,
                                "loc": {
                                  "start": {
                                    "line": 257,
                                    "column": 78
                                  },
                                  "end": {
                                    "line": 257,
                                    "column": 82
                                  }
                                }
                              },
                              {
                                "type": "Identifier",
                                "start": 11595,
                                "end": 11604,
                                "loc": {
                                  "start": {
                                    "line": 257,
                                    "column": 84
                                  },
                                  "end": {
                                    "line": 257,
                                    "column": 93
                                  }
                                },
                                "name": "arguments"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 11615,
                      "end": 11682,
                      "loc": {
                        "start": {
                          "line": 258,
                          "column": 8
                        },
                        "end": {
                          "line": 258,
                          "column": 75
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 11615,
                        "end": 11681,
                        "loc": {
                          "start": {
                            "line": 258,
                            "column": 8
                          },
                          "end": {
                            "line": 258,
                            "column": 74
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 11615,
                          "end": 11636,
                          "loc": {
                            "start": {
                              "line": 258,
                              "column": 8
                            },
                            "end": {
                              "line": 258,
                              "column": 29
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 11615,
                            "end": 11619,
                            "loc": {
                              "start": {
                                "line": 258,
                                "column": 8
                              },
                              "end": {
                                "line": 258,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11620,
                            "end": 11636,
                            "loc": {
                              "start": {
                                "line": 258,
                                "column": 13
                              },
                              "end": {
                                "line": 258,
                                "column": 29
                              }
                            },
                            "name": "removeFromSketch"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 11637,
                            "end": 11644,
                            "loc": {
                              "start": {
                                "line": 258,
                                "column": 30
                              },
                              "end": {
                                "line": 258,
                                "column": 37
                              }
                            },
                            "name": "members"
                          },
                          {
                            "type": "ObjectExpression",
                            "start": 11646,
                            "end": 11680,
                            "loc": {
                              "start": {
                                "line": 258,
                                "column": 39
                              },
                              "end": {
                                "line": 258,
                                "column": 73
                              }
                            },
                            "properties": [
                              {
                                "type": "Property",
                                "start": 11647,
                                "end": 11662,
                                "loc": {
                                  "start": {
                                    "line": 258,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 258,
                                    "column": 55
                                  }
                                },
                                "method": false,
                                "shorthand": false,
                                "computed": false,
                                "key": {
                                  "type": "Identifier",
                                  "start": 11647,
                                  "end": 11655,
                                  "loc": {
                                    "start": {
                                      "line": 258,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 258,
                                      "column": 48
                                    }
                                  },
                                  "name": "onServer"
                                },
                                "value": {
                                  "type": "Literal",
                                  "start": 11657,
                                  "end": 11662,
                                  "loc": {
                                    "start": {
                                      "line": 258,
                                      "column": 50
                                    },
                                    "end": {
                                      "line": 258,
                                      "column": 55
                                    }
                                  },
                                  "value": false,
                                  "rawValue": false,
                                  "raw": "false"
                                },
                                "kind": "init"
                              },
                              {
                                "type": "Property",
                                "start": 11664,
                                "end": 11679,
                                "loc": {
                                  "start": {
                                    "line": 258,
                                    "column": 57
                                  },
                                  "end": {
                                    "line": 258,
                                    "column": 72
                                  }
                                },
                                "method": false,
                                "shorthand": false,
                                "computed": false,
                                "key": {
                                  "type": "Identifier",
                                  "start": 11664,
                                  "end": 11672,
                                  "loc": {
                                    "start": {
                                      "line": 258,
                                      "column": 57
                                    },
                                    "end": {
                                      "line": 258,
                                      "column": 65
                                    }
                                  },
                                  "name": "onClient"
                                },
                                "value": {
                                  "type": "Literal",
                                  "start": 11674,
                                  "end": 11679,
                                  "loc": {
                                    "start": {
                                      "line": 258,
                                      "column": 67
                                    },
                                    "end": {
                                      "line": 258,
                                      "column": 72
                                    }
                                  },
                                  "value": false,
                                  "rawValue": false,
                                  "raw": "false"
                                },
                                "kind": "init"
                              }
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 11691,
                      "end": 11706,
                      "loc": {
                        "start": {
                          "line": 259,
                          "column": 8
                        },
                        "end": {
                          "line": 259,
                          "column": 23
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 11698,
                        "end": 11705,
                        "loc": {
                          "start": {
                            "line": 259,
                            "column": 15
                          },
                          "end": {
                            "line": 259,
                            "column": 22
                          }
                        },
                        "name": "members"
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 11718,
              "end": 11774,
              "loc": {
                "start": {
                  "line": 262,
                  "column": 4
                },
                "end": {
                  "line": 264,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 11718,
                "end": 11725,
                "loc": {
                  "start": {
                    "line": 262,
                    "column": 4
                  },
                  "end": {
                    "line": 262,
                    "column": 11
                  }
                },
                "name": "showBox"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 11725,
                "end": 11774,
                "loc": {
                  "start": {
                    "line": 262,
                    "column": 11
                  },
                  "end": {
                    "line": 264,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 11728,
                  "end": 11774,
                  "loc": {
                    "start": {
                      "line": 262,
                      "column": 14
                    },
                    "end": {
                      "line": 264,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 11738,
                      "end": 11768,
                      "loc": {
                        "start": {
                          "line": 263,
                          "column": 8
                        },
                        "end": {
                          "line": 263,
                          "column": 38
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 11738,
                        "end": 11767,
                        "loc": {
                          "start": {
                            "line": 263,
                            "column": 8
                          },
                          "end": {
                            "line": 263,
                            "column": 37
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 11738,
                          "end": 11755,
                          "loc": {
                            "start": {
                              "line": 263,
                              "column": 8
                            },
                            "end": {
                              "line": 263,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 11738,
                            "end": 11742,
                            "loc": {
                              "start": {
                                "line": 263,
                                "column": 8
                              },
                              "end": {
                                "line": 263,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11743,
                            "end": 11755,
                            "loc": {
                              "start": {
                                "line": 263,
                                "column": 13
                              },
                              "end": {
                                "line": 263,
                                "column": 25
                              }
                            },
                            "name": "addAuxObject"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 11756,
                            "end": 11766,
                            "loc": {
                              "start": {
                                "line": 263,
                                "column": 26
                              },
                              "end": {
                                "line": 263,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 11756,
                              "end": 11760,
                              "loc": {
                                "start": {
                                  "line": 263,
                                  "column": 26
                                },
                                "end": {
                                  "line": 263,
                                  "column": 30
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11761,
                              "end": 11766,
                              "loc": {
                                "start": {
                                  "line": 263,
                                  "column": 31
                                },
                                "end": {
                                  "line": 263,
                                  "column": 36
                                }
                              },
                              "name": "__box"
                            },
                            "computed": false
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 11780,
              "end": 11839,
              "loc": {
                "start": {
                  "line": 266,
                  "column": 4
                },
                "end": {
                  "line": 268,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 11780,
                "end": 11787,
                "loc": {
                  "start": {
                    "line": 266,
                    "column": 4
                  },
                  "end": {
                    "line": 266,
                    "column": 11
                  }
                },
                "name": "hideBox"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 11787,
                "end": 11839,
                "loc": {
                  "start": {
                    "line": 266,
                    "column": 11
                  },
                  "end": {
                    "line": 268,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 11790,
                  "end": 11839,
                  "loc": {
                    "start": {
                      "line": 266,
                      "column": 14
                    },
                    "end": {
                      "line": 268,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 11800,
                      "end": 11833,
                      "loc": {
                        "start": {
                          "line": 267,
                          "column": 8
                        },
                        "end": {
                          "line": 267,
                          "column": 41
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 11800,
                        "end": 11832,
                        "loc": {
                          "start": {
                            "line": 267,
                            "column": 8
                          },
                          "end": {
                            "line": 267,
                            "column": 40
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 11800,
                          "end": 11820,
                          "loc": {
                            "start": {
                              "line": 267,
                              "column": 8
                            },
                            "end": {
                              "line": 267,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 11800,
                            "end": 11804,
                            "loc": {
                              "start": {
                                "line": 267,
                                "column": 8
                              },
                              "end": {
                                "line": 267,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11805,
                            "end": 11820,
                            "loc": {
                              "start": {
                                "line": 267,
                                "column": 13
                              },
                              "end": {
                                "line": 267,
                                "column": 28
                              }
                            },
                            "name": "removeAuxObject"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 11821,
                            "end": 11831,
                            "loc": {
                              "start": {
                                "line": 267,
                                "column": 29
                              },
                              "end": {
                                "line": 267,
                                "column": 39
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 11821,
                              "end": 11825,
                              "loc": {
                                "start": {
                                  "line": 267,
                                  "column": 29
                                },
                                "end": {
                                  "line": 267,
                                  "column": 33
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11826,
                              "end": 11831,
                              "loc": {
                                "start": {
                                  "line": 267,
                                  "column": 34
                                },
                                "end": {
                                  "line": 267,
                                  "column": 39
                                }
                              },
                              "name": "__box"
                            },
                            "computed": false
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 11845,
              "end": 13016,
              "loc": {
                "start": {
                  "line": 270,
                  "column": 4
                },
                "end": {
                  "line": 303,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 11845,
                "end": 11854,
                "loc": {
                  "start": {
                    "line": 270,
                    "column": 4
                  },
                  "end": {
                    "line": 270,
                    "column": 13
                  }
                },
                "name": "updateBox"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 11854,
                "end": 13016,
                "loc": {
                  "start": {
                    "line": 270,
                    "column": 13
                  },
                  "end": {
                    "line": 303,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 11857,
                  "end": 13016,
                  "loc": {
                    "start": {
                      "line": 270,
                      "column": 16
                    },
                    "end": {
                      "line": 303,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 11867,
                      "end": 11892,
                      "loc": {
                        "start": {
                          "line": 271,
                          "column": 8
                        },
                        "end": {
                          "line": 271,
                          "column": 33
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 11867,
                        "end": 11891,
                        "loc": {
                          "start": {
                            "line": 271,
                            "column": 8
                          },
                          "end": {
                            "line": 271,
                            "column": 32
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 11867,
                          "end": 11889,
                          "loc": {
                            "start": {
                              "line": 271,
                              "column": 8
                            },
                            "end": {
                              "line": 271,
                              "column": 30
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 11867,
                            "end": 11871,
                            "loc": {
                              "start": {
                                "line": 271,
                                "column": 8
                              },
                              "end": {
                                "line": 271,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11872,
                            "end": 11889,
                            "loc": {
                              "start": {
                                "line": 271,
                                "column": 13
                              },
                              "end": {
                                "line": 271,
                                "column": 30
                              }
                            },
                            "name": "updateMatrixWorld"
                          },
                          "computed": false
                        },
                        "arguments": []
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " bbox is bounding box in local to sketch coordinates",
                          "start": 11901,
                          "end": 11955,
                          "loc": {
                            "start": {
                              "line": 272,
                              "column": 8
                            },
                            "end": {
                              "line": 272,
                              "column": 62
                            }
                          },
                          "range": [
                            11901,
                            11955
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 11964,
                      "end": 11992,
                      "loc": {
                        "start": {
                          "line": 273,
                          "column": 8
                        },
                        "end": {
                          "line": 273,
                          "column": 36
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 11968,
                          "end": 11991,
                          "loc": {
                            "start": {
                              "line": 273,
                              "column": 12
                            },
                            "end": {
                              "line": 273,
                              "column": 35
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 11968,
                            "end": 11972,
                            "loc": {
                              "start": {
                                "line": 273,
                                "column": 12
                              },
                              "end": {
                                "line": 273,
                                "column": 16
                              }
                            },
                            "name": "bbox",
                            "leadingComments": null
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 11975,
                            "end": 11991,
                            "loc": {
                              "start": {
                                "line": 273,
                                "column": 19
                              },
                              "end": {
                                "line": 273,
                                "column": 35
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 11979,
                              "end": 11989,
                              "loc": {
                                "start": {
                                  "line": 273,
                                  "column": 23
                                },
                                "end": {
                                  "line": 273,
                                  "column": 33
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 11979,
                                "end": 11984,
                                "loc": {
                                  "start": {
                                    "line": 273,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 273,
                                    "column": 28
                                  }
                                },
                                "name": "THREE"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11985,
                                "end": 11989,
                                "loc": {
                                  "start": {
                                    "line": 273,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 273,
                                    "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": 11901,
                          "end": 11955,
                          "loc": {
                            "start": {
                              "line": 272,
                              "column": 8
                            },
                            "end": {
                              "line": 272,
                              "column": 62
                            }
                          },
                          "range": [
                            11901,
                            11955
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 12001,
                      "end": 12030,
                      "loc": {
                        "start": {
                          "line": 274,
                          "column": 8
                        },
                        "end": {
                          "line": 274,
                          "column": 37
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 12005,
                          "end": 12029,
                          "loc": {
                            "start": {
                              "line": 274,
                              "column": 12
                            },
                            "end": {
                              "line": 274,
                              "column": 36
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 12005,
                            "end": 12007,
                            "loc": {
                              "start": {
                                "line": 274,
                                "column": 12
                              },
                              "end": {
                                "line": 274,
                                "column": 14
                              }
                            },
                            "name": "v1"
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 12010,
                            "end": 12029,
                            "loc": {
                              "start": {
                                "line": 274,
                                "column": 17
                              },
                              "end": {
                                "line": 274,
                                "column": 36
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 12014,
                              "end": 12027,
                              "loc": {
                                "start": {
                                  "line": 274,
                                  "column": 21
                                },
                                "end": {
                                  "line": 274,
                                  "column": 34
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 12014,
                                "end": 12019,
                                "loc": {
                                  "start": {
                                    "line": 274,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 274,
                                    "column": 26
                                  }
                                },
                                "name": "THREE"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12020,
                                "end": 12027,
                                "loc": {
                                  "start": {
                                    "line": 274,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 274,
                                    "column": 34
                                  }
                                },
                                "name": "Vector3"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 12039,
                      "end": 12514,
                      "loc": {
                        "start": {
                          "line": 275,
                          "column": 8
                        },
                        "end": {
                          "line": 285,
                          "column": 12
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 12039,
                        "end": 12513,
                        "loc": {
                          "start": {
                            "line": 275,
                            "column": 8
                          },
                          "end": {
                            "line": 285,
                            "column": 11
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 12039,
                          "end": 12072,
                          "loc": {
                            "start": {
                              "line": 275,
                              "column": 8
                            },
                            "end": {
                              "line": 275,
                              "column": 41
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 12039,
                            "end": 12064,
                            "loc": {
                              "start": {
                                "line": 275,
                                "column": 8
                              },
                              "end": {
                                "line": 275,
                                "column": 33
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 12039,
                              "end": 12062,
                              "loc": {
                                "start": {
                                  "line": 275,
                                  "column": 8
                                },
                                "end": {
                                  "line": 275,
                                  "column": 31
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 12039,
                                "end": 12043,
                                "loc": {
                                  "start": {
                                    "line": 275,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 275,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12044,
                                "end": 12062,
                                "loc": {
                                  "start": {
                                    "line": 275,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 275,
                                    "column": 31
                                  }
                                },
                                "name": "getObjectsOnSketch"
                              },
                              "computed": false
                            },
                            "arguments": []
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12065,
                            "end": 12072,
                            "loc": {
                              "start": {
                                "line": 275,
                                "column": 34
                              },
                              "end": {
                                "line": 275,
                                "column": 41
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 12073,
                            "end": 12512,
                            "loc": {
                              "start": {
                                "line": 275,
                                "column": 42
                              },
                              "end": {
                                "line": 285,
                                "column": 10
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": true,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 12073,
                                "end": 12076,
                                "loc": {
                                  "start": {
                                    "line": 275,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 275,
                                    "column": 45
                                  }
                                },
                                "name": "obj"
                              }
                            ],
                            "body": {
                              "type": "CallExpression",
                              "start": 12080,
                              "end": 12512,
                              "loc": {
                                "start": {
                                  "line": 275,
                                  "column": 49
                                },
                                "end": {
                                  "line": 285,
                                  "column": 10
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 12080,
                                "end": 12099,
                                "loc": {
                                  "start": {
                                    "line": 275,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 275,
                                    "column": 68
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 12080,
                                  "end": 12083,
                                  "loc": {
                                    "start": {
                                      "line": 275,
                                      "column": 49
                                    },
                                    "end": {
                                      "line": 275,
                                      "column": 52
                                    }
                                  },
                                  "name": "obj"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 12084,
                                  "end": 12099,
                                  "loc": {
                                    "start": {
                                      "line": 275,
                                      "column": 53
                                    },
                                    "end": {
                                      "line": 275,
                                      "column": 68
                                    }
                                  },
                                  "name": "traverseVisible"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ArrowFunctionExpression",
                                  "start": 12100,
                                  "end": 12511,
                                  "loc": {
                                    "start": {
                                      "line": 275,
                                      "column": 69
                                    },
                                    "end": {
                                      "line": 285,
                                      "column": 9
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": false,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 12100,
                                      "end": 12104,
                                      "loc": {
                                        "start": {
                                          "line": 275,
                                          "column": 69
                                        },
                                        "end": {
                                          "line": 275,
                                          "column": 73
                                        }
                                      },
                                      "name": "node"
                                    }
                                  ],
                                  "body": {
                                    "type": "BlockStatement",
                                    "start": 12108,
                                    "end": 12511,
                                    "loc": {
                                      "start": {
                                        "line": 275,
                                        "column": 77
                                      },
                                      "end": {
                                        "line": 285,
                                        "column": 9
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "IfStatement",
                                        "start": 12122,
                                        "end": 12193,
                                        "loc": {
                                          "start": {
                                            "line": 276,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 277,
                                            "column": 23
                                          }
                                        },
                                        "test": {
                                          "type": "UnaryExpression",
                                          "start": 12126,
                                          "end": 12168,
                                          "loc": {
                                            "start": {
                                              "line": 276,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 276,
                                              "column": 58
                                            }
                                          },
                                          "operator": "!",
                                          "prefix": true,
                                          "argument": {
                                            "type": "BinaryExpression",
                                            "start": 12128,
                                            "end": 12167,
                                            "loc": {
                                              "start": {
                                                "line": 276,
                                                "column": 18
                                              },
                                              "end": {
                                                "line": 276,
                                                "column": 57
                                              }
                                            },
                                            "left": {
                                              "type": "MemberExpression",
                                              "start": 12128,
                                              "end": 12141,
                                              "loc": {
                                                "start": {
                                                  "line": 276,
                                                  "column": 18
                                                },
                                                "end": {
                                                  "line": 276,
                                                  "column": 31
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 12128,
                                                "end": 12132,
                                                "loc": {
                                                  "start": {
                                                    "line": 276,
                                                    "column": 18
                                                  },
                                                  "end": {
                                                    "line": 276,
                                                    "column": 22
                                                  }
                                                },
                                                "name": "node"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 12133,
                                                "end": 12141,
                                                "loc": {
                                                  "start": {
                                                    "line": 276,
                                                    "column": 23
                                                  },
                                                  "end": {
                                                    "line": 276,
                                                    "column": 31
                                                  }
                                                },
                                                "name": "geometry"
                                              },
                                              "computed": false
                                            },
                                            "operator": "instanceof",
                                            "right": {
                                              "type": "MemberExpression",
                                              "start": 12153,
                                              "end": 12167,
                                              "loc": {
                                                "start": {
                                                  "line": 276,
                                                  "column": 43
                                                },
                                                "end": {
                                                  "line": 276,
                                                  "column": 57
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 12153,
                                                "end": 12158,
                                                "loc": {
                                                  "start": {
                                                    "line": 276,
                                                    "column": 43
                                                  },
                                                  "end": {
                                                    "line": 276,
                                                    "column": 48
                                                  }
                                                },
                                                "name": "THREE"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 12159,
                                                "end": 12167,
                                                "loc": {
                                                  "start": {
                                                    "line": 276,
                                                    "column": 49
                                                  },
                                                  "end": {
                                                    "line": 276,
                                                    "column": 57
                                                  }
                                                },
                                                "name": "Geometry"
                                              },
                                              "computed": false
                                            },
                                            "parenthesizedExpression": true
                                          }
                                        },
                                        "consequent": {
                                          "type": "ReturnStatement",
                                          "start": 12186,
                                          "end": 12193,
                                          "loc": {
                                            "start": {
                                              "line": 277,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 277,
                                              "column": 23
                                            }
                                          },
                                          "argument": null
                                        },
                                        "alternate": null
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 12206,
                                        "end": 12501,
                                        "loc": {
                                          "start": {
                                            "line": 278,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 284,
                                            "column": 15
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 12206,
                                          "end": 12500,
                                          "loc": {
                                            "start": {
                                              "line": 278,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 284,
                                              "column": 14
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 12206,
                                            "end": 12236,
                                            "loc": {
                                              "start": {
                                                "line": 278,
                                                "column": 12
                                              },
                                              "end": {
                                                "line": 278,
                                                "column": 42
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 12206,
                                              "end": 12228,
                                              "loc": {
                                                "start": {
                                                  "line": 278,
                                                  "column": 12
                                                },
                                                "end": {
                                                  "line": 278,
                                                  "column": 34
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 12206,
                                                "end": 12219,
                                                "loc": {
                                                  "start": {
                                                    "line": 278,
                                                    "column": 12
                                                  },
                                                  "end": {
                                                    "line": 278,
                                                    "column": 25
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 12206,
                                                  "end": 12210,
                                                  "loc": {
                                                    "start": {
                                                      "line": 278,
                                                      "column": 12
                                                    },
                                                    "end": {
                                                      "line": 278,
                                                      "column": 16
                                                    }
                                                  },
                                                  "name": "node"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 12211,
                                                  "end": 12219,
                                                  "loc": {
                                                    "start": {
                                                      "line": 278,
                                                      "column": 17
                                                    },
                                                    "end": {
                                                      "line": 278,
                                                      "column": 25
                                                    }
                                                  },
                                                  "name": "geometry"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 12220,
                                                "end": 12228,
                                                "loc": {
                                                  "start": {
                                                    "line": 278,
                                                    "column": 26
                                                  },
                                                  "end": {
                                                    "line": 278,
                                                    "column": 34
                                                  }
                                                },
                                                "name": "vertices"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 12229,
                                              "end": 12236,
                                              "loc": {
                                                "start": {
                                                  "line": 278,
                                                  "column": 35
                                                },
                                                "end": {
                                                  "line": 278,
                                                  "column": 42
                                                }
                                              },
                                              "name": "forEach"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "ArrowFunctionExpression",
                                              "start": 12237,
                                              "end": 12499,
                                              "loc": {
                                                "start": {
                                                  "line": 278,
                                                  "column": 43
                                                },
                                                "end": {
                                                  "line": 284,
                                                  "column": 13
                                                }
                                              },
                                              "id": null,
                                              "generator": false,
                                              "expression": false,
                                              "async": false,
                                              "params": [
                                                {
                                                  "type": "Identifier",
                                                  "start": 12237,
                                                  "end": 12243,
                                                  "loc": {
                                                    "start": {
                                                      "line": 278,
                                                      "column": 43
                                                    },
                                                    "end": {
                                                      "line": 278,
                                                      "column": 49
                                                    }
                                                  },
                                                  "name": "vertex"
                                                }
                                              ],
                                              "body": {
                                                "type": "BlockStatement",
                                                "start": 12247,
                                                "end": 12499,
                                                "loc": {
                                                  "start": {
                                                    "line": 278,
                                                    "column": 53
                                                  },
                                                  "end": {
                                                    "line": 284,
                                                    "column": 13
                                                  }
                                                },
                                                "body": [
                                                  {
                                                    "type": "ExpressionStatement",
                                                    "start": 12351,
                                                    "end": 12367,
                                                    "loc": {
                                                      "start": {
                                                        "line": 280,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 280,
                                                        "column": 32
                                                      }
                                                    },
                                                    "expression": {
                                                      "type": "CallExpression",
                                                      "start": 12351,
                                                      "end": 12366,
                                                      "loc": {
                                                        "start": {
                                                          "line": 280,
                                                          "column": 16
                                                        },
                                                        "end": {
                                                          "line": 280,
                                                          "column": 31
                                                        }
                                                      },
                                                      "callee": {
                                                        "type": "MemberExpression",
                                                        "start": 12351,
                                                        "end": 12358,
                                                        "loc": {
                                                          "start": {
                                                            "line": 280,
                                                            "column": 16
                                                          },
                                                          "end": {
                                                            "line": 280,
                                                            "column": 23
                                                          }
                                                        },
                                                        "object": {
                                                          "type": "Identifier",
                                                          "start": 12351,
                                                          "end": 12353,
                                                          "loc": {
                                                            "start": {
                                                              "line": 280,
                                                              "column": 16
                                                            },
                                                            "end": {
                                                              "line": 280,
                                                              "column": 18
                                                            }
                                                          },
                                                          "name": "v1",
                                                          "leadingComments": null
                                                        },
                                                        "property": {
                                                          "type": "Identifier",
                                                          "start": 12354,
                                                          "end": 12358,
                                                          "loc": {
                                                            "start": {
                                                              "line": 280,
                                                              "column": 19
                                                            },
                                                            "end": {
                                                              "line": 280,
                                                              "column": 23
                                                            }
                                                          },
                                                          "name": "copy"
                                                        },
                                                        "computed": false,
                                                        "leadingComments": null
                                                      },
                                                      "arguments": [
                                                        {
                                                          "type": "Identifier",
                                                          "start": 12359,
                                                          "end": 12365,
                                                          "loc": {
                                                            "start": {
                                                              "line": 280,
                                                              "column": 24
                                                            },
                                                            "end": {
                                                              "line": 280,
                                                              "column": 30
                                                            }
                                                          },
                                                          "name": "vertex"
                                                        }
                                                      ],
                                                      "leadingComments": null
                                                    },
                                                    "leadingComments": [
                                                      {
                                                        "type": "CommentLine",
                                                        "value": " translate vertex coordinates from local-to-node to local-to-sketch",
                                                        "start": 12265,
                                                        "end": 12334,
                                                        "loc": {
                                                          "start": {
                                                            "line": 279,
                                                            "column": 16
                                                          },
                                                          "end": {
                                                            "line": 279,
                                                            "column": 85
                                                          }
                                                        },
                                                        "range": [
                                                          12265,
                                                          12334
                                                        ]
                                                      }
                                                    ]
                                                  },
                                                  {
                                                    "type": "ExpressionStatement",
                                                    "start": 12384,
                                                    "end": 12406,
                                                    "loc": {
                                                      "start": {
                                                        "line": 281,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 281,
                                                        "column": 38
                                                      }
                                                    },
                                                    "expression": {
                                                      "type": "CallExpression",
                                                      "start": 12384,
                                                      "end": 12405,
                                                      "loc": {
                                                        "start": {
                                                          "line": 281,
                                                          "column": 16
                                                        },
                                                        "end": {
                                                          "line": 281,
                                                          "column": 37
                                                        }
                                                      },
                                                      "callee": {
                                                        "type": "MemberExpression",
                                                        "start": 12384,
                                                        "end": 12401,
                                                        "loc": {
                                                          "start": {
                                                            "line": 281,
                                                            "column": 16
                                                          },
                                                          "end": {
                                                            "line": 281,
                                                            "column": 33
                                                          }
                                                        },
                                                        "object": {
                                                          "type": "Identifier",
                                                          "start": 12384,
                                                          "end": 12388,
                                                          "loc": {
                                                            "start": {
                                                              "line": 281,
                                                              "column": 16
                                                            },
                                                            "end": {
                                                              "line": 281,
                                                              "column": 20
                                                            }
                                                          },
                                                          "name": "node"
                                                        },
                                                        "property": {
                                                          "type": "Identifier",
                                                          "start": 12389,
                                                          "end": 12401,
                                                          "loc": {
                                                            "start": {
                                                              "line": 281,
                                                              "column": 21
                                                            },
                                                            "end": {
                                                              "line": 281,
                                                              "column": 33
                                                            }
                                                          },
                                                          "name": "localToWorld"
                                                        },
                                                        "computed": false
                                                      },
                                                      "arguments": [
                                                        {
                                                          "type": "Identifier",
                                                          "start": 12402,
                                                          "end": 12404,
                                                          "loc": {
                                                            "start": {
                                                              "line": 281,
                                                              "column": 34
                                                            },
                                                            "end": {
                                                              "line": 281,
                                                              "column": 36
                                                            }
                                                          },
                                                          "name": "v1"
                                                        }
                                                      ]
                                                    }
                                                  },
                                                  {
                                                    "type": "ExpressionStatement",
                                                    "start": 12423,
                                                    "end": 12445,
                                                    "loc": {
                                                      "start": {
                                                        "line": 282,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 282,
                                                        "column": 38
                                                      }
                                                    },
                                                    "expression": {
                                                      "type": "CallExpression",
                                                      "start": 12423,
                                                      "end": 12444,
                                                      "loc": {
                                                        "start": {
                                                          "line": 282,
                                                          "column": 16
                                                        },
                                                        "end": {
                                                          "line": 282,
                                                          "column": 37
                                                        }
                                                      },
                                                      "callee": {
                                                        "type": "MemberExpression",
                                                        "start": 12423,
                                                        "end": 12440,
                                                        "loc": {
                                                          "start": {
                                                            "line": 282,
                                                            "column": 16
                                                          },
                                                          "end": {
                                                            "line": 282,
                                                            "column": 33
                                                          }
                                                        },
                                                        "object": {
                                                          "type": "ThisExpression",
                                                          "start": 12423,
                                                          "end": 12427,
                                                          "loc": {
                                                            "start": {
                                                              "line": 282,
                                                              "column": 16
                                                            },
                                                            "end": {
                                                              "line": 282,
                                                              "column": 20
                                                            }
                                                          }
                                                        },
                                                        "property": {
                                                          "type": "Identifier",
                                                          "start": 12428,
                                                          "end": 12440,
                                                          "loc": {
                                                            "start": {
                                                              "line": 282,
                                                              "column": 21
                                                            },
                                                            "end": {
                                                              "line": 282,
                                                              "column": 33
                                                            }
                                                          },
                                                          "name": "worldToLocal"
                                                        },
                                                        "computed": false
                                                      },
                                                      "arguments": [
                                                        {
                                                          "type": "Identifier",
                                                          "start": 12441,
                                                          "end": 12443,
                                                          "loc": {
                                                            "start": {
                                                              "line": 282,
                                                              "column": 34
                                                            },
                                                            "end": {
                                                              "line": 282,
                                                              "column": 36
                                                            }
                                                          },
                                                          "name": "v1"
                                                        }
                                                      ]
                                                    }
                                                  },
                                                  {
                                                    "type": "ExpressionStatement",
                                                    "start": 12462,
                                                    "end": 12485,
                                                    "loc": {
                                                      "start": {
                                                        "line": 283,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 283,
                                                        "column": 39
                                                      }
                                                    },
                                                    "expression": {
                                                      "type": "CallExpression",
                                                      "start": 12462,
                                                      "end": 12484,
                                                      "loc": {
                                                        "start": {
                                                          "line": 283,
                                                          "column": 16
                                                        },
                                                        "end": {
                                                          "line": 283,
                                                          "column": 38
                                                        }
                                                      },
                                                      "callee": {
                                                        "type": "MemberExpression",
                                                        "start": 12462,
                                                        "end": 12480,
                                                        "loc": {
                                                          "start": {
                                                            "line": 283,
                                                            "column": 16
                                                          },
                                                          "end": {
                                                            "line": 283,
                                                            "column": 34
                                                          }
                                                        },
                                                        "object": {
                                                          "type": "Identifier",
                                                          "start": 12462,
                                                          "end": 12466,
                                                          "loc": {
                                                            "start": {
                                                              "line": 283,
                                                              "column": 16
                                                            },
                                                            "end": {
                                                              "line": 283,
                                                              "column": 20
                                                            }
                                                          },
                                                          "name": "bbox"
                                                        },
                                                        "property": {
                                                          "type": "Identifier",
                                                          "start": 12467,
                                                          "end": 12480,
                                                          "loc": {
                                                            "start": {
                                                              "line": 283,
                                                              "column": 21
                                                            },
                                                            "end": {
                                                              "line": 283,
                                                              "column": 34
                                                            }
                                                          },
                                                          "name": "expandByPoint"
                                                        },
                                                        "computed": false
                                                      },
                                                      "arguments": [
                                                        {
                                                          "type": "Identifier",
                                                          "start": 12481,
                                                          "end": 12483,
                                                          "loc": {
                                                            "start": {
                                                              "line": 283,
                                                              "column": 35
                                                            },
                                                            "end": {
                                                              "line": 283,
                                                              "column": 37
                                                            }
                                                          },
                                                          "name": "v1"
                                                        }
                                                      ]
                                                    }
                                                  }
                                                ]
                                              }
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  }
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 12524,
                      "end": 12549,
                      "loc": {
                        "start": {
                          "line": 287,
                          "column": 8
                        },
                        "end": {
                          "line": 287,
                          "column": 33
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 12528,
                          "end": 12548,
                          "loc": {
                            "start": {
                              "line": 287,
                              "column": 12
                            },
                            "end": {
                              "line": 287,
                              "column": 32
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 12528,
                            "end": 12535,
                            "loc": {
                              "start": {
                                "line": 287,
                                "column": 12
                              },
                              "end": {
                                "line": 287,
                                "column": 19
                              }
                            },
                            "name": "thisBox"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 12538,
                            "end": 12548,
                            "loc": {
                              "start": {
                                "line": 287,
                                "column": 22
                              },
                              "end": {
                                "line": 287,
                                "column": 32
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 12538,
                              "end": 12542,
                              "loc": {
                                "start": {
                                  "line": 287,
                                  "column": 22
                                },
                                "end": {
                                  "line": 287,
                                  "column": 26
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 12543,
                              "end": 12548,
                              "loc": {
                                "start": {
                                  "line": 287,
                                  "column": 27
                                },
                                "end": {
                                  "line": 287,
                                  "column": 32
                                }
                              },
                              "name": "__box"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 12558,
                      "end": 12599,
                      "loc": {
                        "start": {
                          "line": 288,
                          "column": 8
                        },
                        "end": {
                          "line": 288,
                          "column": 49
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 12558,
                        "end": 12598,
                        "loc": {
                          "start": {
                            "line": 288,
                            "column": 8
                          },
                          "end": {
                            "line": 288,
                            "column": 48
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 12558,
                          "end": 12574,
                          "loc": {
                            "start": {
                              "line": 288,
                              "column": 8
                            },
                            "end": {
                              "line": 288,
                              "column": 24
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 12558,
                            "end": 12565,
                            "loc": {
                              "start": {
                                "line": 288,
                                "column": 8
                              },
                              "end": {
                                "line": 288,
                                "column": 15
                              }
                            },
                            "name": "thisBox"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12566,
                            "end": 12574,
                            "loc": {
                              "start": {
                                "line": 288,
                                "column": 16
                              },
                              "end": {
                                "line": 288,
                                "column": 24
                              }
                            },
                            "name": "material"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 12577,
                          "end": 12598,
                          "loc": {
                            "start": {
                              "line": 288,
                              "column": 27
                            },
                            "end": {
                              "line": 288,
                              "column": 48
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 12577,
                            "end": 12581,
                            "loc": {
                              "start": {
                                "line": 288,
                                "column": 27
                              },
                              "end": {
                                "line": 288,
                                "column": 31
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12582,
                            "end": 12598,
                            "loc": {
                              "start": {
                                "line": 288,
                                "column": 32
                              },
                              "end": {
                                "line": 288,
                                "column": 48
                              }
                            },
                            "name": "frameBoxMaterial"
                          },
                          "computed": false
                        }
                      }
                    },
                    {
                      "type": "IfStatement",
                      "start": 12609,
                      "end": 13010,
                      "loc": {
                        "start": {
                          "line": 290,
                          "column": 8
                        },
                        "end": {
                          "line": 302,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "CallExpression",
                        "start": 12613,
                        "end": 12627,
                        "loc": {
                          "start": {
                            "line": 290,
                            "column": 12
                          },
                          "end": {
                            "line": 290,
                            "column": 26
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 12613,
                          "end": 12625,
                          "loc": {
                            "start": {
                              "line": 290,
                              "column": 12
                            },
                            "end": {
                              "line": 290,
                              "column": 24
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 12613,
                            "end": 12617,
                            "loc": {
                              "start": {
                                "line": 290,
                                "column": 12
                              },
                              "end": {
                                "line": 290,
                                "column": 16
                              }
                            },
                            "name": "bbox"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12618,
                            "end": 12625,
                            "loc": {
                              "start": {
                                "line": 290,
                                "column": 17
                              },
                              "end": {
                                "line": 290,
                                "column": 24
                              }
                            },
                            "name": "isEmpty"
                          },
                          "computed": false
                        },
                        "arguments": []
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 12629,
                        "end": 12767,
                        "loc": {
                          "start": {
                            "line": 290,
                            "column": 28
                          },
                          "end": {
                            "line": 294,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 12678,
                            "end": 12714,
                            "loc": {
                              "start": {
                                "line": 292,
                                "column": 12
                              },
                              "end": {
                                "line": 292,
                                "column": 48
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 12678,
                              "end": 12713,
                              "loc": {
                                "start": {
                                  "line": 292,
                                  "column": 12
                                },
                                "end": {
                                  "line": 292,
                                  "column": 47
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 12678,
                                "end": 12695,
                                "loc": {
                                  "start": {
                                    "line": 292,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 292,
                                    "column": 29
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 12678,
                                  "end": 12691,
                                  "loc": {
                                    "start": {
                                      "line": 292,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 292,
                                      "column": 25
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 12678,
                                    "end": 12685,
                                    "loc": {
                                      "start": {
                                        "line": 292,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 292,
                                        "column": 19
                                      }
                                    },
                                    "name": "thisBox",
                                    "leadingComments": null
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 12686,
                                    "end": 12691,
                                    "loc": {
                                      "start": {
                                        "line": 292,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 292,
                                        "column": 25
                                      }
                                    },
                                    "name": "scale"
                                  },
                                  "computed": false,
                                  "leadingComments": null
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 12692,
                                  "end": 12695,
                                  "loc": {
                                    "start": {
                                      "line": 292,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 292,
                                      "column": 29
                                    }
                                  },
                                  "name": "set"
                                },
                                "computed": false,
                                "leadingComments": null
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 12696,
                                  "end": 12700,
                                  "loc": {
                                    "start": {
                                      "line": 292,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 292,
                                      "column": 34
                                    }
                                  },
                                  "value": 0.001,
                                  "rawValue": 0.001,
                                  "raw": "1e-3"
                                },
                                {
                                  "type": "Literal",
                                  "start": 12702,
                                  "end": 12706,
                                  "loc": {
                                    "start": {
                                      "line": 292,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 292,
                                      "column": 40
                                    }
                                  },
                                  "value": 0.001,
                                  "rawValue": 0.001,
                                  "raw": "1e-3"
                                },
                                {
                                  "type": "Literal",
                                  "start": 12708,
                                  "end": 12712,
                                  "loc": {
                                    "start": {
                                      "line": 292,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 292,
                                      "column": 46
                                    }
                                  },
                                  "value": 0.001,
                                  "rawValue": 0.001,
                                  "raw": "1e-3"
                                }
                              ],
                              "leadingComments": null
                            },
                            "leadingComments": [
                              {
                                "type": "CommentLine",
                                "value": " (nothing on sketch)",
                                "start": 12643,
                                "end": 12665,
                                "loc": {
                                  "start": {
                                    "line": 291,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 291,
                                    "column": 34
                                  }
                                },
                                "range": [
                                  12643,
                                  12665
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 12727,
                            "end": 12757,
                            "loc": {
                              "start": {
                                "line": 293,
                                "column": 12
                              },
                              "end": {
                                "line": 293,
                                "column": 42
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 12727,
                              "end": 12756,
                              "loc": {
                                "start": {
                                  "line": 293,
                                  "column": 12
                                },
                                "end": {
                                  "line": 293,
                                  "column": 41
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 12727,
                                "end": 12747,
                                "loc": {
                                  "start": {
                                    "line": 293,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 293,
                                    "column": 32
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 12727,
                                  "end": 12743,
                                  "loc": {
                                    "start": {
                                      "line": 293,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 293,
                                      "column": 28
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 12727,
                                    "end": 12734,
                                    "loc": {
                                      "start": {
                                        "line": 293,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 293,
                                        "column": 19
                                      }
                                    },
                                    "name": "thisBox"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 12735,
                                    "end": 12743,
                                    "loc": {
                                      "start": {
                                        "line": 293,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 293,
                                        "column": 28
                                      }
                                    },
                                    "name": "position"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 12744,
                                  "end": 12747,
                                  "loc": {
                                    "start": {
                                      "line": 293,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 293,
                                      "column": 32
                                    }
                                  },
                                  "name": "set"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 12748,
                                  "end": 12749,
                                  "loc": {
                                    "start": {
                                      "line": 293,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 293,
                                      "column": 34
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Literal",
                                  "start": 12751,
                                  "end": 12752,
                                  "loc": {
                                    "start": {
                                      "line": 293,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 293,
                                      "column": 37
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Literal",
                                  "start": 12754,
                                  "end": 12755,
                                  "loc": {
                                    "start": {
                                      "line": 293,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 293,
                                      "column": 40
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          }
                        ]
                      },
                      "alternate": {
                        "type": "BlockStatement",
                        "start": 12781,
                        "end": 13010,
                        "loc": {
                          "start": {
                            "line": 295,
                            "column": 13
                          },
                          "end": {
                            "line": 302,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 12823,
                            "end": 12842,
                            "loc": {
                              "start": {
                                "line": 297,
                                "column": 12
                              },
                              "end": {
                                "line": 297,
                                "column": 31
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 12823,
                              "end": 12841,
                              "loc": {
                                "start": {
                                  "line": 297,
                                  "column": 12
                                },
                                "end": {
                                  "line": 297,
                                  "column": 30
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 12823,
                                "end": 12833,
                                "loc": {
                                  "start": {
                                    "line": 297,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 297,
                                    "column": 22
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 12823,
                                  "end": 12831,
                                  "loc": {
                                    "start": {
                                      "line": 297,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 297,
                                      "column": 20
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 12823,
                                    "end": 12827,
                                    "loc": {
                                      "start": {
                                        "line": 297,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 297,
                                        "column": 16
                                      }
                                    },
                                    "name": "bbox",
                                    "leadingComments": null
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 12828,
                                    "end": 12831,
                                    "loc": {
                                      "start": {
                                        "line": 297,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 297,
                                        "column": 20
                                      }
                                    },
                                    "name": "min"
                                  },
                                  "computed": false,
                                  "leadingComments": null
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 12832,
                                  "end": 12833,
                                  "loc": {
                                    "start": {
                                      "line": 297,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 297,
                                      "column": 22
                                    }
                                  },
                                  "name": "z"
                                },
                                "computed": false,
                                "leadingComments": null
                              },
                              "right": {
                                "type": "UnaryExpression",
                                "start": 12836,
                                "end": 12841,
                                "loc": {
                                  "start": {
                                    "line": 297,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 297,
                                    "column": 30
                                  }
                                },
                                "operator": "-",
                                "prefix": true,
                                "argument": {
                                  "type": "Literal",
                                  "start": 12837,
                                  "end": 12841,
                                  "loc": {
                                    "start": {
                                      "line": 297,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 297,
                                      "column": 30
                                    }
                                  },
                                  "value": 0.001,
                                  "rawValue": 0.001,
                                  "raw": "1e-3"
                                }
                              },
                              "leadingComments": null
                            },
                            "leadingComments": [
                              {
                                "type": "CommentLine",
                                "value": "make box flat",
                                "start": 12795,
                                "end": 12810,
                                "loc": {
                                  "start": {
                                    "line": 296,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 296,
                                    "column": 27
                                  }
                                },
                                "range": [
                                  12795,
                                  12810
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 12855,
                            "end": 12873,
                            "loc": {
                              "start": {
                                "line": 298,
                                "column": 12
                              },
                              "end": {
                                "line": 298,
                                "column": 30
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 12855,
                              "end": 12872,
                              "loc": {
                                "start": {
                                  "line": 298,
                                  "column": 12
                                },
                                "end": {
                                  "line": 298,
                                  "column": 29
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 12855,
                                "end": 12865,
                                "loc": {
                                  "start": {
                                    "line": 298,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 298,
                                    "column": 22
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 12855,
                                  "end": 12863,
                                  "loc": {
                                    "start": {
                                      "line": 298,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 298,
                                      "column": 20
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 12855,
                                    "end": 12859,
                                    "loc": {
                                      "start": {
                                        "line": 298,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 298,
                                        "column": 16
                                      }
                                    },
                                    "name": "bbox"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 12860,
                                    "end": 12863,
                                    "loc": {
                                      "start": {
                                        "line": 298,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 298,
                                        "column": 20
                                      }
                                    },
                                    "name": "max"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 12864,
                                  "end": 12865,
                                  "loc": {
                                    "start": {
                                      "line": 298,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 298,
                                      "column": 22
                                    }
                                  },
                                  "name": "z"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "Literal",
                                "start": 12868,
                                "end": 12872,
                                "loc": {
                                  "start": {
                                    "line": 298,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 298,
                                    "column": 29
                                  }
                                },
                                "value": 0.001,
                                "rawValue": 0.001,
                                "raw": "1e-3"
                              }
                            },
                            "trailingComments": [
                              {
                                "type": "CommentLine",
                                "value": " !nb: updates thisBox from bbox",
                                "start": 12886,
                                "end": 12919,
                                "loc": {
                                  "start": {
                                    "line": 299,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 299,
                                    "column": 45
                                  }
                                },
                                "range": [
                                  12886,
                                  12919
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 12932,
                            "end": 12957,
                            "loc": {
                              "start": {
                                "line": 300,
                                "column": 12
                              },
                              "end": {
                                "line": 300,
                                "column": 37
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 12932,
                              "end": 12956,
                              "loc": {
                                "start": {
                                  "line": 300,
                                  "column": 12
                                },
                                "end": {
                                  "line": 300,
                                  "column": 36
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 12932,
                                "end": 12941,
                                "loc": {
                                  "start": {
                                    "line": 300,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 300,
                                    "column": 21
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 12932,
                                  "end": 12936,
                                  "loc": {
                                    "start": {
                                      "line": 300,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 300,
                                      "column": 16
                                    }
                                  },
                                  "name": "bbox",
                                  "leadingComments": null
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 12937,
                                  "end": 12941,
                                  "loc": {
                                    "start": {
                                      "line": 300,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 300,
                                      "column": 21
                                    }
                                  },
                                  "name": "size"
                                },
                                "computed": false,
                                "leadingComments": null
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 12942,
                                  "end": 12955,
                                  "loc": {
                                    "start": {
                                      "line": 300,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 300,
                                      "column": 35
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 12942,
                                    "end": 12949,
                                    "loc": {
                                      "start": {
                                        "line": 300,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 300,
                                        "column": 29
                                      }
                                    },
                                    "name": "thisBox"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 12950,
                                    "end": 12955,
                                    "loc": {
                                      "start": {
                                        "line": 300,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 300,
                                        "column": 35
                                      }
                                    },
                                    "name": "scale"
                                  },
                                  "computed": false
                                }
                              ],
                              "leadingComments": null
                            },
                            "leadingComments": [
                              {
                                "type": "CommentLine",
                                "value": " !nb: updates thisBox from bbox",
                                "start": 12886,
                                "end": 12919,
                                "loc": {
                                  "start": {
                                    "line": 299,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 299,
                                    "column": 45
                                  }
                                },
                                "range": [
                                  12886,
                                  12919
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 12970,
                            "end": 13000,
                            "loc": {
                              "start": {
                                "line": 301,
                                "column": 12
                              },
                              "end": {
                                "line": 301,
                                "column": 42
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 12970,
                              "end": 12999,
                              "loc": {
                                "start": {
                                  "line": 301,
                                  "column": 12
                                },
                                "end": {
                                  "line": 301,
                                  "column": 41
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 12970,
                                "end": 12981,
                                "loc": {
                                  "start": {
                                    "line": 301,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 301,
                                    "column": 23
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 12970,
                                  "end": 12974,
                                  "loc": {
                                    "start": {
                                      "line": 301,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 301,
                                      "column": 16
                                    }
                                  },
                                  "name": "bbox"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 12975,
                                  "end": 12981,
                                  "loc": {
                                    "start": {
                                      "line": 301,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 301,
                                      "column": 23
                                    }
                                  },
                                  "name": "center"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 12982,
                                  "end": 12998,
                                  "loc": {
                                    "start": {
                                      "line": 301,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 301,
                                      "column": 40
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 12982,
                                    "end": 12989,
                                    "loc": {
                                      "start": {
                                        "line": 301,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 301,
                                        "column": 31
                                      }
                                    },
                                    "name": "thisBox"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 12990,
                                    "end": 12998,
                                    "loc": {
                                      "start": {
                                        "line": 301,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 301,
                                        "column": 40
                                      }
                                    },
                                    "name": "position"
                                  },
                                  "computed": false
                                }
                              ]
                            }
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 13022,
              "end": 13381,
              "loc": {
                "start": {
                  "line": 305,
                  "column": 4
                },
                "end": {
                  "line": 316,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 13022,
                "end": 13033,
                "loc": {
                  "start": {
                    "line": 305,
                    "column": 4
                  },
                  "end": {
                    "line": 305,
                    "column": 15
                  }
                },
                "name": "infiniteBox"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 13033,
                "end": 13381,
                "loc": {
                  "start": {
                    "line": 305,
                    "column": 15
                  },
                  "end": {
                    "line": 316,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 13036,
                  "end": 13381,
                  "loc": {
                    "start": {
                      "line": 305,
                      "column": 18
                    },
                    "end": {
                      "line": 316,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 13046,
                      "end": 13074,
                      "loc": {
                        "start": {
                          "line": 306,
                          "column": 8
                        },
                        "end": {
                          "line": 306,
                          "column": 36
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 13050,
                          "end": 13073,
                          "loc": {
                            "start": {
                              "line": 306,
                              "column": 12
                            },
                            "end": {
                              "line": 306,
                              "column": 35
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 13050,
                            "end": 13054,
                            "loc": {
                              "start": {
                                "line": 306,
                                "column": 12
                              },
                              "end": {
                                "line": 306,
                                "column": 16
                              }
                            },
                            "name": "bbox"
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 13057,
                            "end": 13073,
                            "loc": {
                              "start": {
                                "line": 306,
                                "column": 19
                              },
                              "end": {
                                "line": 306,
                                "column": 35
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 13061,
                              "end": 13071,
                              "loc": {
                                "start": {
                                  "line": 306,
                                  "column": 23
                                },
                                "end": {
                                  "line": 306,
                                  "column": 33
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 13061,
                                "end": 13066,
                                "loc": {
                                  "start": {
                                    "line": 306,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 306,
                                    "column": 28
                                  }
                                },
                                "name": "THREE"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 13067,
                                "end": 13071,
                                "loc": {
                                  "start": {
                                    "line": 306,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 306,
                                    "column": 33
                                  }
                                },
                                "name": "Box3"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 13083,
                      "end": 13112,
                      "loc": {
                        "start": {
                          "line": 307,
                          "column": 8
                        },
                        "end": {
                          "line": 307,
                          "column": 37
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 13083,
                        "end": 13111,
                        "loc": {
                          "start": {
                            "line": 307,
                            "column": 8
                          },
                          "end": {
                            "line": 307,
                            "column": 36
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 13083,
                          "end": 13095,
                          "loc": {
                            "start": {
                              "line": 307,
                              "column": 8
                            },
                            "end": {
                              "line": 307,
                              "column": 20
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 13083,
                            "end": 13091,
                            "loc": {
                              "start": {
                                "line": 307,
                                "column": 8
                              },
                              "end": {
                                "line": 307,
                                "column": 16
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 13083,
                              "end": 13087,
                              "loc": {
                                "start": {
                                  "line": 307,
                                  "column": 8
                                },
                                "end": {
                                  "line": 307,
                                  "column": 12
                                }
                              },
                              "name": "bbox"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 13088,
                              "end": 13091,
                              "loc": {
                                "start": {
                                  "line": 307,
                                  "column": 13
                                },
                                "end": {
                                  "line": 307,
                                  "column": 16
                                }
                              },
                              "name": "max"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13092,
                            "end": 13095,
                            "loc": {
                              "start": {
                                "line": 307,
                                "column": 17
                              },
                              "end": {
                                "line": 307,
                                "column": 20
                              }
                            },
                            "name": "set"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 13096,
                            "end": 13099,
                            "loc": {
                              "start": {
                                "line": 307,
                                "column": 21
                              },
                              "end": {
                                "line": 307,
                                "column": 24
                              }
                            },
                            "value": 100000,
                            "rawValue": 100000,
                            "raw": "1e5"
                          },
                          {
                            "type": "Literal",
                            "start": 13101,
                            "end": 13104,
                            "loc": {
                              "start": {
                                "line": 307,
                                "column": 26
                              },
                              "end": {
                                "line": 307,
                                "column": 29
                              }
                            },
                            "value": 100000,
                            "rawValue": 100000,
                            "raw": "1e5"
                          },
                          {
                            "type": "Literal",
                            "start": 13106,
                            "end": 13110,
                            "loc": {
                              "start": {
                                "line": 307,
                                "column": 31
                              },
                              "end": {
                                "line": 307,
                                "column": 35
                              }
                            },
                            "value": 0.001,
                            "rawValue": 0.001,
                            "raw": "1e-3"
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 13121,
                      "end": 13145,
                      "loc": {
                        "start": {
                          "line": 308,
                          "column": 8
                        },
                        "end": {
                          "line": 308,
                          "column": 32
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 13121,
                        "end": 13144,
                        "loc": {
                          "start": {
                            "line": 308,
                            "column": 8
                          },
                          "end": {
                            "line": 308,
                            "column": 31
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 13121,
                          "end": 13134,
                          "loc": {
                            "start": {
                              "line": 308,
                              "column": 8
                            },
                            "end": {
                              "line": 308,
                              "column": 21
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 13121,
                            "end": 13129,
                            "loc": {
                              "start": {
                                "line": 308,
                                "column": 8
                              },
                              "end": {
                                "line": 308,
                                "column": 16
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 13121,
                              "end": 13125,
                              "loc": {
                                "start": {
                                  "line": 308,
                                  "column": 8
                                },
                                "end": {
                                  "line": 308,
                                  "column": 12
                                }
                              },
                              "name": "bbox"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 13126,
                              "end": 13129,
                              "loc": {
                                "start": {
                                  "line": 308,
                                  "column": 13
                                },
                                "end": {
                                  "line": 308,
                                  "column": 16
                                }
                              },
                              "name": "min"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13130,
                            "end": 13134,
                            "loc": {
                              "start": {
                                "line": 308,
                                "column": 17
                              },
                              "end": {
                                "line": 308,
                                "column": 21
                              }
                            },
                            "name": "copy"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 13135,
                            "end": 13143,
                            "loc": {
                              "start": {
                                "line": 308,
                                "column": 22
                              },
                              "end": {
                                "line": 308,
                                "column": 30
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 13135,
                              "end": 13139,
                              "loc": {
                                "start": {
                                  "line": 308,
                                  "column": 22
                                },
                                "end": {
                                  "line": 308,
                                  "column": 26
                                }
                              },
                              "name": "bbox"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 13140,
                              "end": 13143,
                              "loc": {
                                "start": {
                                  "line": 308,
                                  "column": 27
                                },
                                "end": {
                                  "line": 308,
                                  "column": 30
                                }
                              },
                              "name": "max"
                            },
                            "computed": false
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 13154,
                      "end": 13172,
                      "loc": {
                        "start": {
                          "line": 309,
                          "column": 8
                        },
                        "end": {
                          "line": 309,
                          "column": 26
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 13154,
                        "end": 13171,
                        "loc": {
                          "start": {
                            "line": 309,
                            "column": 8
                          },
                          "end": {
                            "line": 309,
                            "column": 25
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 13154,
                          "end": 13169,
                          "loc": {
                            "start": {
                              "line": 309,
                              "column": 8
                            },
                            "end": {
                              "line": 309,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 13154,
                            "end": 13162,
                            "loc": {
                              "start": {
                                "line": 309,
                                "column": 8
                              },
                              "end": {
                                "line": 309,
                                "column": 16
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 13154,
                              "end": 13158,
                              "loc": {
                                "start": {
                                  "line": 309,
                                  "column": 8
                                },
                                "end": {
                                  "line": 309,
                                  "column": 12
                                }
                              },
                              "name": "bbox"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 13159,
                              "end": 13162,
                              "loc": {
                                "start": {
                                  "line": 309,
                                  "column": 13
                                },
                                "end": {
                                  "line": 309,
                                  "column": 16
                                }
                              },
                              "name": "min"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13163,
                            "end": 13169,
                            "loc": {
                              "start": {
                                "line": 309,
                                "column": 17
                              },
                              "end": {
                                "line": 309,
                                "column": 23
                              }
                            },
                            "name": "negate"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 13182,
                      "end": 13207,
                      "loc": {
                        "start": {
                          "line": 311,
                          "column": 8
                        },
                        "end": {
                          "line": 311,
                          "column": 33
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 13186,
                          "end": 13206,
                          "loc": {
                            "start": {
                              "line": 311,
                              "column": 12
                            },
                            "end": {
                              "line": 311,
                              "column": 32
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 13186,
                            "end": 13193,
                            "loc": {
                              "start": {
                                "line": 311,
                                "column": 12
                              },
                              "end": {
                                "line": 311,
                                "column": 19
                              }
                            },
                            "name": "thisBox"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 13196,
                            "end": 13206,
                            "loc": {
                              "start": {
                                "line": 311,
                                "column": 22
                              },
                              "end": {
                                "line": 311,
                                "column": 32
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 13196,
                              "end": 13200,
                              "loc": {
                                "start": {
                                  "line": 311,
                                  "column": 22
                                },
                                "end": {
                                  "line": 311,
                                  "column": 26
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 13201,
                              "end": 13206,
                              "loc": {
                                "start": {
                                  "line": 311,
                                  "column": 27
                                },
                                "end": {
                                  "line": 311,
                                  "column": 32
                                }
                              },
                              "name": "__box"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 13216,
                      "end": 13260,
                      "loc": {
                        "start": {
                          "line": 312,
                          "column": 8
                        },
                        "end": {
                          "line": 312,
                          "column": 52
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 13216,
                        "end": 13259,
                        "loc": {
                          "start": {
                            "line": 312,
                            "column": 8
                          },
                          "end": {
                            "line": 312,
                            "column": 51
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 13216,
                          "end": 13232,
                          "loc": {
                            "start": {
                              "line": 312,
                              "column": 8
                            },
                            "end": {
                              "line": 312,
                              "column": 24
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 13216,
                            "end": 13223,
                            "loc": {
                              "start": {
                                "line": 312,
                                "column": 8
                              },
                              "end": {
                                "line": 312,
                                "column": 15
                              }
                            },
                            "name": "thisBox"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13224,
                            "end": 13232,
                            "loc": {
                              "start": {
                                "line": 312,
                                "column": 16
                              },
                              "end": {
                                "line": 312,
                                "column": 24
                              }
                            },
                            "name": "material"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 13235,
                          "end": 13259,
                          "loc": {
                            "start": {
                              "line": 312,
                              "column": 27
                            },
                            "end": {
                              "line": 312,
                              "column": 51
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 13235,
                            "end": 13239,
                            "loc": {
                              "start": {
                                "line": 312,
                                "column": 27
                              },
                              "end": {
                                "line": 312,
                                "column": 31
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13240,
                            "end": 13259,
                            "loc": {
                              "start": {
                                "line": 312,
                                "column": 32
                              },
                              "end": {
                                "line": 312,
                                "column": 51
                              }
                            },
                            "name": "infiniteBoxMaterial"
                          },
                          "computed": false
                        }
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " !nb: updates thisBox from bbox",
                          "start": 13269,
                          "end": 13302,
                          "loc": {
                            "start": {
                              "line": 313,
                              "column": 8
                            },
                            "end": {
                              "line": 313,
                              "column": 41
                            }
                          },
                          "range": [
                            13269,
                            13302
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 13311,
                      "end": 13336,
                      "loc": {
                        "start": {
                          "line": 314,
                          "column": 8
                        },
                        "end": {
                          "line": 314,
                          "column": 33
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 13311,
                        "end": 13335,
                        "loc": {
                          "start": {
                            "line": 314,
                            "column": 8
                          },
                          "end": {
                            "line": 314,
                            "column": 32
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 13311,
                          "end": 13320,
                          "loc": {
                            "start": {
                              "line": 314,
                              "column": 8
                            },
                            "end": {
                              "line": 314,
                              "column": 17
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 13311,
                            "end": 13315,
                            "loc": {
                              "start": {
                                "line": 314,
                                "column": 8
                              },
                              "end": {
                                "line": 314,
                                "column": 12
                              }
                            },
                            "name": "bbox",
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13316,
                            "end": 13320,
                            "loc": {
                              "start": {
                                "line": 314,
                                "column": 13
                              },
                              "end": {
                                "line": 314,
                                "column": 17
                              }
                            },
                            "name": "size"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 13321,
                            "end": 13334,
                            "loc": {
                              "start": {
                                "line": 314,
                                "column": 18
                              },
                              "end": {
                                "line": 314,
                                "column": 31
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 13321,
                              "end": 13328,
                              "loc": {
                                "start": {
                                  "line": 314,
                                  "column": 18
                                },
                                "end": {
                                  "line": 314,
                                  "column": 25
                                }
                              },
                              "name": "thisBox"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 13329,
                              "end": 13334,
                              "loc": {
                                "start": {
                                  "line": 314,
                                  "column": 26
                                },
                                "end": {
                                  "line": 314,
                                  "column": 31
                                }
                              },
                              "name": "scale"
                            },
                            "computed": false
                          }
                        ],
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " !nb: updates thisBox from bbox",
                          "start": 13269,
                          "end": 13302,
                          "loc": {
                            "start": {
                              "line": 313,
                              "column": 8
                            },
                            "end": {
                              "line": 313,
                              "column": 41
                            }
                          },
                          "range": [
                            13269,
                            13302
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 13345,
                      "end": 13375,
                      "loc": {
                        "start": {
                          "line": 315,
                          "column": 8
                        },
                        "end": {
                          "line": 315,
                          "column": 38
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 13345,
                        "end": 13374,
                        "loc": {
                          "start": {
                            "line": 315,
                            "column": 8
                          },
                          "end": {
                            "line": 315,
                            "column": 37
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 13345,
                          "end": 13356,
                          "loc": {
                            "start": {
                              "line": 315,
                              "column": 8
                            },
                            "end": {
                              "line": 315,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 13345,
                            "end": 13349,
                            "loc": {
                              "start": {
                                "line": 315,
                                "column": 8
                              },
                              "end": {
                                "line": 315,
                                "column": 12
                              }
                            },
                            "name": "bbox"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13350,
                            "end": 13356,
                            "loc": {
                              "start": {
                                "line": 315,
                                "column": 13
                              },
                              "end": {
                                "line": 315,
                                "column": 19
                              }
                            },
                            "name": "center"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 13357,
                            "end": 13373,
                            "loc": {
                              "start": {
                                "line": 315,
                                "column": 20
                              },
                              "end": {
                                "line": 315,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 13357,
                              "end": 13364,
                              "loc": {
                                "start": {
                                  "line": 315,
                                  "column": 20
                                },
                                "end": {
                                  "line": 315,
                                  "column": 27
                                }
                              },
                              "name": "thisBox"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 13365,
                              "end": 13373,
                              "loc": {
                                "start": {
                                  "line": 315,
                                  "column": 28
                                },
                                "end": {
                                  "line": 315,
                                  "column": 36
                                }
                              },
                              "name": "position"
                            },
                            "computed": false
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 13387,
              "end": 13487,
              "loc": {
                "start": {
                  "line": 318,
                  "column": 4
                },
                "end": {
                  "line": 321,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 13387,
                "end": 13395,
                "loc": {
                  "start": {
                    "line": 318,
                    "column": 4
                  },
                  "end": {
                    "line": 318,
                    "column": 12
                  }
                },
                "name": "showGrid"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 13395,
                "end": 13487,
                "loc": {
                  "start": {
                    "line": 318,
                    "column": 12
                  },
                  "end": {
                    "line": 321,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 13398,
                  "end": 13487,
                  "loc": {
                    "start": {
                      "line": 318,
                      "column": 15
                    },
                    "end": {
                      "line": 321,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 13408,
                      "end": 13454,
                      "loc": {
                        "start": {
                          "line": 319,
                          "column": 8
                        },
                        "end": {
                          "line": 319,
                          "column": 54
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 13408,
                        "end": 13453,
                        "loc": {
                          "start": {
                            "line": 319,
                            "column": 8
                          },
                          "end": {
                            "line": 319,
                            "column": 53
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 13408,
                          "end": 13425,
                          "loc": {
                            "start": {
                              "line": 319,
                              "column": 8
                            },
                            "end": {
                              "line": 319,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 13408,
                            "end": 13412,
                            "loc": {
                              "start": {
                                "line": 319,
                                "column": 8
                              },
                              "end": {
                                "line": 319,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13413,
                            "end": 13425,
                            "loc": {
                              "start": {
                                "line": 319,
                                "column": 13
                              },
                              "end": {
                                "line": 319,
                                "column": 25
                              }
                            },
                            "name": "addAuxObject"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrayExpression",
                            "start": 13426,
                            "end": 13452,
                            "loc": {
                              "start": {
                                "line": 319,
                                "column": 26
                              },
                              "end": {
                                "line": 319,
                                "column": 52
                              }
                            },
                            "elements": [
                              {
                                "type": "MemberExpression",
                                "start": 13427,
                                "end": 13438,
                                "loc": {
                                  "start": {
                                    "line": 319,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 319,
                                    "column": 38
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 13427,
                                  "end": 13431,
                                  "loc": {
                                    "start": {
                                      "line": 319,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 319,
                                      "column": 31
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 13432,
                                  "end": 13438,
                                  "loc": {
                                    "start": {
                                      "line": 319,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 319,
                                      "column": 38
                                    }
                                  },
                                  "name": "__grid"
                                },
                                "computed": false
                              },
                              {
                                "type": "MemberExpression",
                                "start": 13440,
                                "end": 13451,
                                "loc": {
                                  "start": {
                                    "line": 319,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 319,
                                    "column": 51
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 13440,
                                  "end": 13444,
                                  "loc": {
                                    "start": {
                                      "line": 319,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 319,
                                      "column": 44
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 13445,
                                  "end": 13451,
                                  "loc": {
                                    "start": {
                                      "line": 319,
                                      "column": 45
                                    },
                                    "end": {
                                      "line": 319,
                                      "column": 51
                                    }
                                  },
                                  "name": "__axis"
                                },
                                "computed": false
                              }
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 13463,
                      "end": 13481,
                      "loc": {
                        "start": {
                          "line": 320,
                          "column": 8
                        },
                        "end": {
                          "line": 320,
                          "column": 26
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 13463,
                        "end": 13480,
                        "loc": {
                          "start": {
                            "line": 320,
                            "column": 8
                          },
                          "end": {
                            "line": 320,
                            "column": 25
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 13463,
                          "end": 13472,
                          "loc": {
                            "start": {
                              "line": 320,
                              "column": 8
                            },
                            "end": {
                              "line": 320,
                              "column": 17
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 13463,
                            "end": 13467,
                            "loc": {
                              "start": {
                                "line": 320,
                                "column": 8
                              },
                              "end": {
                                "line": 320,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13468,
                            "end": 13472,
                            "loc": {
                              "start": {
                                "line": 320,
                                "column": 13
                              },
                              "end": {
                                "line": 320,
                                "column": 17
                              }
                            },
                            "name": "zoom"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "UnaryExpression",
                          "start": 13475,
                          "end": 13480,
                          "loc": {
                            "start": {
                              "line": 320,
                              "column": 20
                            },
                            "end": {
                              "line": 320,
                              "column": 25
                            }
                          },
                          "operator": "-",
                          "prefix": true,
                          "argument": {
                            "type": "Literal",
                            "start": 13477,
                            "end": 13480,
                            "loc": {
                              "start": {
                                "line": 320,
                                "column": 22
                              },
                              "end": {
                                "line": 320,
                                "column": 25
                              }
                            },
                            "value": 250,
                            "rawValue": 250,
                            "raw": "250"
                          }
                        }
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 13493,
              "end": 13569,
              "loc": {
                "start": {
                  "line": 323,
                  "column": 4
                },
                "end": {
                  "line": 325,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 13493,
                "end": 13501,
                "loc": {
                  "start": {
                    "line": 323,
                    "column": 4
                  },
                  "end": {
                    "line": 323,
                    "column": 12
                  }
                },
                "name": "hideGrid"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 13501,
                "end": 13569,
                "loc": {
                  "start": {
                    "line": 323,
                    "column": 12
                  },
                  "end": {
                    "line": 325,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 13504,
                  "end": 13569,
                  "loc": {
                    "start": {
                      "line": 323,
                      "column": 15
                    },
                    "end": {
                      "line": 325,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 13514,
                      "end": 13563,
                      "loc": {
                        "start": {
                          "line": 324,
                          "column": 8
                        },
                        "end": {
                          "line": 324,
                          "column": 57
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 13514,
                        "end": 13562,
                        "loc": {
                          "start": {
                            "line": 324,
                            "column": 8
                          },
                          "end": {
                            "line": 324,
                            "column": 56
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 13514,
                          "end": 13534,
                          "loc": {
                            "start": {
                              "line": 324,
                              "column": 8
                            },
                            "end": {
                              "line": 324,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 13514,
                            "end": 13518,
                            "loc": {
                              "start": {
                                "line": 324,
                                "column": 8
                              },
                              "end": {
                                "line": 324,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13519,
                            "end": 13534,
                            "loc": {
                              "start": {
                                "line": 324,
                                "column": 13
                              },
                              "end": {
                                "line": 324,
                                "column": 28
                              }
                            },
                            "name": "removeAuxObject"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrayExpression",
                            "start": 13535,
                            "end": 13561,
                            "loc": {
                              "start": {
                                "line": 324,
                                "column": 29
                              },
                              "end": {
                                "line": 324,
                                "column": 55
                              }
                            },
                            "elements": [
                              {
                                "type": "MemberExpression",
                                "start": 13536,
                                "end": 13547,
                                "loc": {
                                  "start": {
                                    "line": 324,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 324,
                                    "column": 41
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 13536,
                                  "end": 13540,
                                  "loc": {
                                    "start": {
                                      "line": 324,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 324,
                                      "column": 34
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 13541,
                                  "end": 13547,
                                  "loc": {
                                    "start": {
                                      "line": 324,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 324,
                                      "column": 41
                                    }
                                  },
                                  "name": "__grid"
                                },
                                "computed": false
                              },
                              {
                                "type": "MemberExpression",
                                "start": 13549,
                                "end": 13560,
                                "loc": {
                                  "start": {
                                    "line": 324,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 324,
                                    "column": 54
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 13549,
                                  "end": 13553,
                                  "loc": {
                                    "start": {
                                      "line": 324,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 324,
                                      "column": 47
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 13554,
                                  "end": 13560,
                                  "loc": {
                                    "start": {
                                      "line": 324,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 324,
                                      "column": 54
                                    }
                                  },
                                  "name": "__axis"
                                },
                                "computed": false
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 13575,
              "end": 17374,
              "loc": {
                "start": {
                  "line": 327,
                  "column": 4
                },
                "end": {
                  "line": 405,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 13575,
                "end": 13585,
                "loc": {
                  "start": {
                    "line": 327,
                    "column": 4
                  },
                  "end": {
                    "line": 327,
                    "column": 14
                  }
                },
                "name": "updateGrid"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 13585,
                "end": 17374,
                "loc": {
                  "start": {
                    "line": 327,
                    "column": 14
                  },
                  "end": {
                    "line": 405,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 13586,
                    "end": 13600,
                    "loc": {
                      "start": {
                        "line": 327,
                        "column": 15
                      },
                      "end": {
                        "line": 327,
                        "column": 29
                      }
                    },
                    "name": "cameraDistance"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 13602,
                  "end": 17374,
                  "loc": {
                    "start": {
                      "line": 327,
                      "column": 31
                    },
                    "end": {
                      "line": 405,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 13612,
                      "end": 13651,
                      "loc": {
                        "start": {
                          "line": 328,
                          "column": 8
                        },
                        "end": {
                          "line": 328,
                          "column": 47
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 13612,
                        "end": 13650,
                        "loc": {
                          "start": {
                            "line": 328,
                            "column": 8
                          },
                          "end": {
                            "line": 328,
                            "column": 46
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 13612,
                          "end": 13626,
                          "loc": {
                            "start": {
                              "line": 328,
                              "column": 8
                            },
                            "end": {
                              "line": 328,
                              "column": 22
                            }
                          },
                          "name": "cameraDistance"
                        },
                        "right": {
                          "type": "LogicalExpression",
                          "start": 13629,
                          "end": 13650,
                          "loc": {
                            "start": {
                              "line": 328,
                              "column": 25
                            },
                            "end": {
                              "line": 328,
                              "column": 46
                            }
                          },
                          "left": {
                            "type": "Identifier",
                            "start": 13629,
                            "end": 13643,
                            "loc": {
                              "start": {
                                "line": 328,
                                "column": 25
                              },
                              "end": {
                                "line": 328,
                                "column": 39
                              }
                            },
                            "name": "cameraDistance"
                          },
                          "operator": "||",
                          "right": {
                            "type": "Literal",
                            "start": 13647,
                            "end": 13650,
                            "loc": {
                              "start": {
                                "line": 328,
                                "column": 43
                              },
                              "end": {
                                "line": 328,
                                "column": 46
                              }
                            },
                            "value": 100,
                            "rawValue": 100,
                            "raw": "100"
                          }
                        }
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "undefined on initial call",
                          "start": 13652,
                          "end": 13679,
                          "loc": {
                            "start": {
                              "line": 328,
                              "column": 48
                            },
                            "end": {
                              "line": 328,
                              "column": 75
                            }
                          },
                          "range": [
                            13652,
                            13679
                          ]
                        },
                        {
                          "type": "CommentLine",
                          "value": " lines length and number calculating",
                          "start": 13688,
                          "end": 13726,
                          "loc": {
                            "start": {
                              "line": 329,
                              "column": 8
                            },
                            "end": {
                              "line": 329,
                              "column": 46
                            }
                          },
                          "range": [
                            13688,
                            13726
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 13735,
                      "end": 13795,
                      "loc": {
                        "start": {
                          "line": 330,
                          "column": 8
                        },
                        "end": {
                          "line": 330,
                          "column": 68
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 13739,
                          "end": 13794,
                          "loc": {
                            "start": {
                              "line": 330,
                              "column": 12
                            },
                            "end": {
                              "line": 330,
                              "column": 67
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 13739,
                            "end": 13743,
                            "loc": {
                              "start": {
                                "line": 330,
                                "column": 12
                              },
                              "end": {
                                "line": 330,
                                "column": 16
                              }
                            },
                            "name": "step",
                            "leadingComments": null
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 13746,
                            "end": 13794,
                            "loc": {
                              "start": {
                                "line": 330,
                                "column": 19
                              },
                              "end": {
                                "line": 330,
                                "column": 67
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 13746,
                              "end": 13763,
                              "loc": {
                                "start": {
                                  "line": 330,
                                  "column": 19
                                },
                                "end": {
                                  "line": 330,
                                  "column": 36
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 13746,
                                "end": 13750,
                                "loc": {
                                  "start": {
                                    "line": 330,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 330,
                                    "column": 23
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 13751,
                                "end": 13763,
                                "loc": {
                                  "start": {
                                    "line": 330,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 330,
                                    "column": 36
                                  }
                                },
                                "name": "calcGridStep"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 13764,
                                "end": 13778,
                                "loc": {
                                  "start": {
                                    "line": 330,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 330,
                                    "column": 51
                                  }
                                },
                                "name": "cameraDistance"
                              },
                              {
                                "type": "MemberExpression",
                                "start": 13780,
                                "end": 13793,
                                "loc": {
                                  "start": {
                                    "line": 330,
                                    "column": 53
                                  },
                                  "end": {
                                    "line": 330,
                                    "column": 66
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 13780,
                                  "end": 13784,
                                  "loc": {
                                    "start": {
                                      "line": 330,
                                      "column": 53
                                    },
                                    "end": {
                                      "line": 330,
                                      "column": 57
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 13785,
                                  "end": 13793,
                                  "loc": {
                                    "start": {
                                      "line": 330,
                                      "column": 58
                                    },
                                    "end": {
                                      "line": 330,
                                      "column": 66
                                    }
                                  },
                                  "name": "gridStep"
                                },
                                "computed": false
                              }
                            ]
                          },
                          "leadingComments": null
                        }
                      ],
                      "kind": "var",
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "undefined on initial call",
                          "start": 13652,
                          "end": 13679,
                          "loc": {
                            "start": {
                              "line": 328,
                              "column": 48
                            },
                            "end": {
                              "line": 328,
                              "column": 75
                            }
                          },
                          "range": [
                            13652,
                            13679
                          ]
                        },
                        {
                          "type": "CommentLine",
                          "value": " lines length and number calculating",
                          "start": 13688,
                          "end": 13726,
                          "loc": {
                            "start": {
                              "line": 329,
                              "column": 8
                            },
                            "end": {
                              "line": 329,
                              "column": 46
                            }
                          },
                          "range": [
                            13688,
                            13726
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 13804,
                      "end": 13859,
                      "loc": {
                        "start": {
                          "line": 331,
                          "column": 8
                        },
                        "end": {
                          "line": 331,
                          "column": 63
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 13808,
                          "end": 13858,
                          "loc": {
                            "start": {
                              "line": 331,
                              "column": 12
                            },
                            "end": {
                              "line": 331,
                              "column": 62
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 13808,
                            "end": 13816,
                            "loc": {
                              "start": {
                                "line": 331,
                                "column": 12
                              },
                              "end": {
                                "line": 331,
                                "column": 20
                              }
                            },
                            "name": "axisSize"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 13819,
                            "end": 13858,
                            "loc": {
                              "start": {
                                "line": 331,
                                "column": 23
                              },
                              "end": {
                                "line": 331,
                                "column": 62
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 13819,
                              "end": 13836,
                              "loc": {
                                "start": {
                                  "line": 331,
                                  "column": 23
                                },
                                "end": {
                                  "line": 331,
                                  "column": 40
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 13819,
                                "end": 13823,
                                "loc": {
                                  "start": {
                                    "line": 331,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 331,
                                    "column": 27
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 13824,
                                "end": 13836,
                                "loc": {
                                  "start": {
                                    "line": 331,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 331,
                                    "column": 40
                                  }
                                },
                                "name": "calcAxisSize"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 13837,
                                "end": 13851,
                                "loc": {
                                  "start": {
                                    "line": 331,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 331,
                                    "column": 55
                                  }
                                },
                                "name": "cameraDistance"
                              },
                              {
                                "type": "Identifier",
                                "start": 13853,
                                "end": 13857,
                                "loc": {
                                  "start": {
                                    "line": 331,
                                    "column": 57
                                  },
                                  "end": {
                                    "line": 331,
                                    "column": 61
                                  }
                                },
                                "name": "step"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 13868,
                      "end": 13911,
                      "loc": {
                        "start": {
                          "line": 332,
                          "column": 8
                        },
                        "end": {
                          "line": 332,
                          "column": 51
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 13872,
                          "end": 13910,
                          "loc": {
                            "start": {
                              "line": 332,
                              "column": 12
                            },
                            "end": {
                              "line": 332,
                              "column": 50
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 13872,
                            "end": 13882,
                            "loc": {
                              "start": {
                                "line": 332,
                                "column": 12
                              },
                              "end": {
                                "line": 332,
                                "column": 22
                              }
                            },
                            "name": "screenSize"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 13885,
                            "end": 13910,
                            "loc": {
                              "start": {
                                "line": 332,
                                "column": 25
                              },
                              "end": {
                                "line": 332,
                                "column": 50
                              }
                            },
                            "left": {
                              "type": "BinaryExpression",
                              "start": 13885,
                              "end": 13906,
                              "loc": {
                                "start": {
                                  "line": 332,
                                  "column": 25
                                },
                                "end": {
                                  "line": 332,
                                  "column": 46
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 13885,
                                "end": 13889,
                                "loc": {
                                  "start": {
                                    "line": 332,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 332,
                                    "column": 29
                                  }
                                },
                                "name": "step"
                              },
                              "operator": "*",
                              "right": {
                                "type": "MemberExpression",
                                "start": 13893,
                                "end": 13906,
                                "loc": {
                                  "start": {
                                    "line": 332,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 332,
                                    "column": 46
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 13893,
                                  "end": 13897,
                                  "loc": {
                                    "start": {
                                      "line": 332,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 332,
                                      "column": 37
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 13898,
                                  "end": 13906,
                                  "loc": {
                                    "start": {
                                      "line": 332,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 332,
                                      "column": 46
                                    }
                                  },
                                  "name": "gridSize"
                                },
                                "computed": false
                              }
                            },
                            "operator": "*",
                            "right": {
                              "type": "Literal",
                              "start": 13909,
                              "end": 13910,
                              "loc": {
                                "start": {
                                  "line": 332,
                                  "column": 49
                                },
                                "end": {
                                  "line": 332,
                                  "column": 50
                                }
                              },
                              "value": 2,
                              "rawValue": 2,
                              "raw": "2"
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 13921,
                      "end": 17368,
                      "loc": {
                        "start": {
                          "line": 334,
                          "column": 8
                        },
                        "end": {
                          "line": 404,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "LogicalExpression",
                        "start": 13925,
                        "end": 13977,
                        "loc": {
                          "start": {
                            "line": 334,
                            "column": 12
                          },
                          "end": {
                            "line": 334,
                            "column": 64
                          }
                        },
                        "left": {
                          "type": "BinaryExpression",
                          "start": 13925,
                          "end": 13947,
                          "loc": {
                            "start": {
                              "line": 334,
                              "column": 12
                            },
                            "end": {
                              "line": 334,
                              "column": 34
                            }
                          },
                          "left": {
                            "type": "MemberExpression",
                            "start": 13925,
                            "end": 13938,
                            "loc": {
                              "start": {
                                "line": 334,
                                "column": 12
                              },
                              "end": {
                                "line": 334,
                                "column": 25
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 13925,
                              "end": 13929,
                              "loc": {
                                "start": {
                                  "line": 334,
                                  "column": 12
                                },
                                "end": {
                                  "line": 334,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 13930,
                              "end": 13938,
                              "loc": {
                                "start": {
                                  "line": 334,
                                  "column": 17
                                },
                                "end": {
                                  "line": 334,
                                  "column": 25
                                }
                              },
                              "name": "gridStep"
                            },
                            "computed": false
                          },
                          "operator": "!==",
                          "right": {
                            "type": "Identifier",
                            "start": 13943,
                            "end": 13947,
                            "loc": {
                              "start": {
                                "line": 334,
                                "column": 30
                              },
                              "end": {
                                "line": 334,
                                "column": 34
                              }
                            },
                            "name": "step"
                          }
                        },
                        "operator": "||",
                        "right": {
                          "type": "BinaryExpression",
                          "start": 13951,
                          "end": 13977,
                          "loc": {
                            "start": {
                              "line": 334,
                              "column": 38
                            },
                            "end": {
                              "line": 334,
                              "column": 64
                            }
                          },
                          "left": {
                            "type": "MemberExpression",
                            "start": 13951,
                            "end": 13964,
                            "loc": {
                              "start": {
                                "line": 334,
                                "column": 38
                              },
                              "end": {
                                "line": 334,
                                "column": 51
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 13951,
                              "end": 13955,
                              "loc": {
                                "start": {
                                  "line": 334,
                                  "column": 38
                                },
                                "end": {
                                  "line": 334,
                                  "column": 42
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 13956,
                              "end": 13964,
                              "loc": {
                                "start": {
                                  "line": 334,
                                  "column": 43
                                },
                                "end": {
                                  "line": 334,
                                  "column": 51
                                }
                              },
                              "name": "axisSize"
                            },
                            "computed": false
                          },
                          "operator": "!==",
                          "right": {
                            "type": "Identifier",
                            "start": 13969,
                            "end": 13977,
                            "loc": {
                              "start": {
                                "line": 334,
                                "column": 56
                              },
                              "end": {
                                "line": 334,
                                "column": 64
                              }
                            },
                            "name": "axisSize"
                          }
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 13979,
                        "end": 17368,
                        "loc": {
                          "start": {
                            "line": 334,
                            "column": 66
                          },
                          "end": {
                            "line": 404,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 13993,
                            "end": 14014,
                            "loc": {
                              "start": {
                                "line": 335,
                                "column": 12
                              },
                              "end": {
                                "line": 335,
                                "column": 33
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 13993,
                              "end": 14013,
                              "loc": {
                                "start": {
                                  "line": 335,
                                  "column": 12
                                },
                                "end": {
                                  "line": 335,
                                  "column": 32
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 13993,
                                "end": 14006,
                                "loc": {
                                  "start": {
                                    "line": 335,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 335,
                                    "column": 25
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 13993,
                                  "end": 13997,
                                  "loc": {
                                    "start": {
                                      "line": 335,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 335,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 13998,
                                  "end": 14006,
                                  "loc": {
                                    "start": {
                                      "line": 335,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 335,
                                      "column": 25
                                    }
                                  },
                                  "name": "gridStep"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "Identifier",
                                "start": 14009,
                                "end": 14013,
                                "loc": {
                                  "start": {
                                    "line": 335,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 335,
                                    "column": 32
                                  }
                                },
                                "name": "step"
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 14027,
                            "end": 14052,
                            "loc": {
                              "start": {
                                "line": 336,
                                "column": 12
                              },
                              "end": {
                                "line": 336,
                                "column": 37
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 14027,
                              "end": 14051,
                              "loc": {
                                "start": {
                                  "line": 336,
                                  "column": 12
                                },
                                "end": {
                                  "line": 336,
                                  "column": 36
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 14027,
                                "end": 14040,
                                "loc": {
                                  "start": {
                                    "line": 336,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 336,
                                    "column": 25
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 14027,
                                  "end": 14031,
                                  "loc": {
                                    "start": {
                                      "line": 336,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 336,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 14032,
                                  "end": 14040,
                                  "loc": {
                                    "start": {
                                      "line": 336,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 336,
                                      "column": 25
                                    }
                                  },
                                  "name": "axisSize"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "Identifier",
                                "start": 14043,
                                "end": 14051,
                                "loc": {
                                  "start": {
                                    "line": 336,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 336,
                                    "column": 36
                                  }
                                },
                                "name": "axisSize"
                              }
                            }
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 14066,
                            "end": 14099,
                            "loc": {
                              "start": {
                                "line": 338,
                                "column": 12
                              },
                              "end": {
                                "line": 338,
                                "column": 45
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 14070,
                                "end": 14083,
                                "loc": {
                                  "start": {
                                    "line": 338,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 338,
                                    "column": 29
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 14070,
                                  "end": 14079,
                                  "loc": {
                                    "start": {
                                      "line": 338,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 338,
                                      "column": 25
                                    }
                                  },
                                  "name": "gridCount"
                                },
                                "init": {
                                  "type": "Literal",
                                  "start": 14082,
                                  "end": 14083,
                                  "loc": {
                                    "start": {
                                      "line": 338,
                                      "column": 28
                                    },
                                    "end": {
                                      "line": 338,
                                      "column": 29
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              },
                              {
                                "type": "VariableDeclarator",
                                "start": 14085,
                                "end": 14098,
                                "loc": {
                                  "start": {
                                    "line": 338,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 338,
                                    "column": 44
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 14085,
                                  "end": 14094,
                                  "loc": {
                                    "start": {
                                      "line": 338,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 338,
                                      "column": 40
                                    }
                                  },
                                  "name": "axisCount"
                                },
                                "init": {
                                  "type": "Literal",
                                  "start": 14097,
                                  "end": 14098,
                                  "loc": {
                                    "start": {
                                      "line": 338,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 338,
                                      "column": 44
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 14112,
                            "end": 14246,
                            "loc": {
                              "start": {
                                "line": 339,
                                "column": 12
                              },
                              "end": {
                                "line": 341,
                                "column": 14
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 14116,
                                "end": 14245,
                                "loc": {
                                  "start": {
                                    "line": 339,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 341,
                                    "column": 13
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 14116,
                                  "end": 14125,
                                  "loc": {
                                    "start": {
                                      "line": 339,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 339,
                                      "column": 25
                                    }
                                  },
                                  "name": "addToGrid"
                                },
                                "init": {
                                  "type": "ArrowFunctionExpression",
                                  "start": 14128,
                                  "end": 14245,
                                  "loc": {
                                    "start": {
                                      "line": 339,
                                      "column": 28
                                    },
                                    "end": {
                                      "line": 341,
                                      "column": 13
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": false,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 14129,
                                      "end": 14130,
                                      "loc": {
                                        "start": {
                                          "line": 339,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 339,
                                          "column": 30
                                        }
                                      },
                                      "name": "x"
                                    },
                                    {
                                      "type": "Identifier",
                                      "start": 14132,
                                      "end": 14133,
                                      "loc": {
                                        "start": {
                                          "line": 339,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 339,
                                          "column": 33
                                        }
                                      },
                                      "name": "y"
                                    },
                                    {
                                      "type": "Identifier",
                                      "start": 14135,
                                      "end": 14136,
                                      "loc": {
                                        "start": {
                                          "line": 339,
                                          "column": 35
                                        },
                                        "end": {
                                          "line": 339,
                                          "column": 36
                                        }
                                      },
                                      "name": "z"
                                    }
                                  ],
                                  "body": {
                                    "type": "BlockStatement",
                                    "start": 14141,
                                    "end": 14245,
                                    "loc": {
                                      "start": {
                                        "line": 339,
                                        "column": 41
                                      },
                                      "end": {
                                        "line": 341,
                                        "column": 13
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 14159,
                                        "end": 14231,
                                        "loc": {
                                          "start": {
                                            "line": 340,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 340,
                                            "column": 88
                                          }
                                        },
                                        "expression": {
                                          "type": "AssignmentExpression",
                                          "start": 14159,
                                          "end": 14230,
                                          "loc": {
                                            "start": {
                                              "line": 340,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 340,
                                              "column": 87
                                            }
                                          },
                                          "operator": "=",
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 14159,
                                            "end": 14201,
                                            "loc": {
                                              "start": {
                                                "line": 340,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 340,
                                                "column": 58
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 14159,
                                              "end": 14188,
                                              "loc": {
                                                "start": {
                                                  "line": 340,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 340,
                                                  "column": 45
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 14159,
                                                "end": 14179,
                                                "loc": {
                                                  "start": {
                                                    "line": 340,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 340,
                                                    "column": 36
                                                  }
                                                },
                                                "object": {
                                                  "type": "MemberExpression",
                                                  "start": 14159,
                                                  "end": 14170,
                                                  "loc": {
                                                    "start": {
                                                      "line": 340,
                                                      "column": 16
                                                    },
                                                    "end": {
                                                      "line": 340,
                                                      "column": 27
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "ThisExpression",
                                                    "start": 14159,
                                                    "end": 14163,
                                                    "loc": {
                                                      "start": {
                                                        "line": 340,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 340,
                                                        "column": 20
                                                      }
                                                    }
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 14164,
                                                    "end": 14170,
                                                    "loc": {
                                                      "start": {
                                                        "line": 340,
                                                        "column": 21
                                                      },
                                                      "end": {
                                                        "line": 340,
                                                        "column": 27
                                                      }
                                                    },
                                                    "name": "__grid"
                                                  },
                                                  "computed": false
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 14171,
                                                  "end": 14179,
                                                  "loc": {
                                                    "start": {
                                                      "line": 340,
                                                      "column": 28
                                                    },
                                                    "end": {
                                                      "line": 340,
                                                      "column": 36
                                                    }
                                                  },
                                                  "name": "geometry"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 14180,
                                                "end": 14188,
                                                "loc": {
                                                  "start": {
                                                    "line": 340,
                                                    "column": 37
                                                  },
                                                  "end": {
                                                    "line": 340,
                                                    "column": 45
                                                  }
                                                },
                                                "name": "vertices"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "UpdateExpression",
                                              "start": 14189,
                                              "end": 14200,
                                              "loc": {
                                                "start": {
                                                  "line": 340,
                                                  "column": 46
                                                },
                                                "end": {
                                                  "line": 340,
                                                  "column": 57
                                                }
                                              },
                                              "operator": "++",
                                              "prefix": false,
                                              "argument": {
                                                "type": "Identifier",
                                                "start": 14189,
                                                "end": 14198,
                                                "loc": {
                                                  "start": {
                                                    "line": 340,
                                                    "column": 46
                                                  },
                                                  "end": {
                                                    "line": 340,
                                                    "column": 55
                                                  }
                                                },
                                                "name": "gridCount"
                                              }
                                            },
                                            "computed": true
                                          },
                                          "right": {
                                            "type": "NewExpression",
                                            "start": 14204,
                                            "end": 14230,
                                            "loc": {
                                              "start": {
                                                "line": 340,
                                                "column": 61
                                              },
                                              "end": {
                                                "line": 340,
                                                "column": 87
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 14208,
                                              "end": 14221,
                                              "loc": {
                                                "start": {
                                                  "line": 340,
                                                  "column": 65
                                                },
                                                "end": {
                                                  "line": 340,
                                                  "column": 78
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 14208,
                                                "end": 14213,
                                                "loc": {
                                                  "start": {
                                                    "line": 340,
                                                    "column": 65
                                                  },
                                                  "end": {
                                                    "line": 340,
                                                    "column": 70
                                                  }
                                                },
                                                "name": "THREE"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 14214,
                                                "end": 14221,
                                                "loc": {
                                                  "start": {
                                                    "line": 340,
                                                    "column": 71
                                                  },
                                                  "end": {
                                                    "line": 340,
                                                    "column": 78
                                                  }
                                                },
                                                "name": "Vector3"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 14222,
                                                "end": 14223,
                                                "loc": {
                                                  "start": {
                                                    "line": 340,
                                                    "column": 79
                                                  },
                                                  "end": {
                                                    "line": 340,
                                                    "column": 80
                                                  }
                                                },
                                                "name": "x"
                                              },
                                              {
                                                "type": "Identifier",
                                                "start": 14225,
                                                "end": 14226,
                                                "loc": {
                                                  "start": {
                                                    "line": 340,
                                                    "column": 82
                                                  },
                                                  "end": {
                                                    "line": 340,
                                                    "column": 83
                                                  }
                                                },
                                                "name": "y"
                                              },
                                              {
                                                "type": "Identifier",
                                                "start": 14228,
                                                "end": 14229,
                                                "loc": {
                                                  "start": {
                                                    "line": 340,
                                                    "column": 85
                                                  },
                                                  "end": {
                                                    "line": 340,
                                                    "column": 86
                                                  }
                                                },
                                                "name": "z"
                                              }
                                            ]
                                          }
                                        }
                                      }
                                    ]
                                  }
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 14259,
                            "end": 14393,
                            "loc": {
                              "start": {
                                "line": 342,
                                "column": 12
                              },
                              "end": {
                                "line": 344,
                                "column": 14
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 14263,
                                "end": 14392,
                                "loc": {
                                  "start": {
                                    "line": 342,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 344,
                                    "column": 13
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 14263,
                                  "end": 14272,
                                  "loc": {
                                    "start": {
                                      "line": 342,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 342,
                                      "column": 25
                                    }
                                  },
                                  "name": "addToAxis"
                                },
                                "init": {
                                  "type": "ArrowFunctionExpression",
                                  "start": 14275,
                                  "end": 14392,
                                  "loc": {
                                    "start": {
                                      "line": 342,
                                      "column": 28
                                    },
                                    "end": {
                                      "line": 344,
                                      "column": 13
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": false,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 14276,
                                      "end": 14277,
                                      "loc": {
                                        "start": {
                                          "line": 342,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 342,
                                          "column": 30
                                        }
                                      },
                                      "name": "x"
                                    },
                                    {
                                      "type": "Identifier",
                                      "start": 14279,
                                      "end": 14280,
                                      "loc": {
                                        "start": {
                                          "line": 342,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 342,
                                          "column": 33
                                        }
                                      },
                                      "name": "y"
                                    },
                                    {
                                      "type": "Identifier",
                                      "start": 14282,
                                      "end": 14283,
                                      "loc": {
                                        "start": {
                                          "line": 342,
                                          "column": 35
                                        },
                                        "end": {
                                          "line": 342,
                                          "column": 36
                                        }
                                      },
                                      "name": "z"
                                    }
                                  ],
                                  "body": {
                                    "type": "BlockStatement",
                                    "start": 14288,
                                    "end": 14392,
                                    "loc": {
                                      "start": {
                                        "line": 342,
                                        "column": 41
                                      },
                                      "end": {
                                        "line": 344,
                                        "column": 13
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 14306,
                                        "end": 14378,
                                        "loc": {
                                          "start": {
                                            "line": 343,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 343,
                                            "column": 88
                                          }
                                        },
                                        "expression": {
                                          "type": "AssignmentExpression",
                                          "start": 14306,
                                          "end": 14377,
                                          "loc": {
                                            "start": {
                                              "line": 343,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 343,
                                              "column": 87
                                            }
                                          },
                                          "operator": "=",
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 14306,
                                            "end": 14348,
                                            "loc": {
                                              "start": {
                                                "line": 343,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 343,
                                                "column": 58
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 14306,
                                              "end": 14335,
                                              "loc": {
                                                "start": {
                                                  "line": 343,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 343,
                                                  "column": 45
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 14306,
                                                "end": 14326,
                                                "loc": {
                                                  "start": {
                                                    "line": 343,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 343,
                                                    "column": 36
                                                  }
                                                },
                                                "object": {
                                                  "type": "MemberExpression",
                                                  "start": 14306,
                                                  "end": 14317,
                                                  "loc": {
                                                    "start": {
                                                      "line": 343,
                                                      "column": 16
                                                    },
                                                    "end": {
                                                      "line": 343,
                                                      "column": 27
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "ThisExpression",
                                                    "start": 14306,
                                                    "end": 14310,
                                                    "loc": {
                                                      "start": {
                                                        "line": 343,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 343,
                                                        "column": 20
                                                      }
                                                    }
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 14311,
                                                    "end": 14317,
                                                    "loc": {
                                                      "start": {
                                                        "line": 343,
                                                        "column": 21
                                                      },
                                                      "end": {
                                                        "line": 343,
                                                        "column": 27
                                                      }
                                                    },
                                                    "name": "__axis"
                                                  },
                                                  "computed": false
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 14318,
                                                  "end": 14326,
                                                  "loc": {
                                                    "start": {
                                                      "line": 343,
                                                      "column": 28
                                                    },
                                                    "end": {
                                                      "line": 343,
                                                      "column": 36
                                                    }
                                                  },
                                                  "name": "geometry"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 14327,
                                                "end": 14335,
                                                "loc": {
                                                  "start": {
                                                    "line": 343,
                                                    "column": 37
                                                  },
                                                  "end": {
                                                    "line": 343,
                                                    "column": 45
                                                  }
                                                },
                                                "name": "vertices"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "UpdateExpression",
                                              "start": 14336,
                                              "end": 14347,
                                              "loc": {
                                                "start": {
                                                  "line": 343,
                                                  "column": 46
                                                },
                                                "end": {
                                                  "line": 343,
                                                  "column": 57
                                                }
                                              },
                                              "operator": "++",
                                              "prefix": false,
                                              "argument": {
                                                "type": "Identifier",
                                                "start": 14336,
                                                "end": 14345,
                                                "loc": {
                                                  "start": {
                                                    "line": 343,
                                                    "column": 46
                                                  },
                                                  "end": {
                                                    "line": 343,
                                                    "column": 55
                                                  }
                                                },
                                                "name": "axisCount"
                                              }
                                            },
                                            "computed": true
                                          },
                                          "right": {
                                            "type": "NewExpression",
                                            "start": 14351,
                                            "end": 14377,
                                            "loc": {
                                              "start": {
                                                "line": 343,
                                                "column": 61
                                              },
                                              "end": {
                                                "line": 343,
                                                "column": 87
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 14355,
                                              "end": 14368,
                                              "loc": {
                                                "start": {
                                                  "line": 343,
                                                  "column": 65
                                                },
                                                "end": {
                                                  "line": 343,
                                                  "column": 78
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 14355,
                                                "end": 14360,
                                                "loc": {
                                                  "start": {
                                                    "line": 343,
                                                    "column": 65
                                                  },
                                                  "end": {
                                                    "line": 343,
                                                    "column": 70
                                                  }
                                                },
                                                "name": "THREE"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 14361,
                                                "end": 14368,
                                                "loc": {
                                                  "start": {
                                                    "line": 343,
                                                    "column": 71
                                                  },
                                                  "end": {
                                                    "line": 343,
                                                    "column": 78
                                                  }
                                                },
                                                "name": "Vector3"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 14369,
                                                "end": 14370,
                                                "loc": {
                                                  "start": {
                                                    "line": 343,
                                                    "column": 79
                                                  },
                                                  "end": {
                                                    "line": 343,
                                                    "column": 80
                                                  }
                                                },
                                                "name": "x"
                                              },
                                              {
                                                "type": "Identifier",
                                                "start": 14372,
                                                "end": 14373,
                                                "loc": {
                                                  "start": {
                                                    "line": 343,
                                                    "column": 82
                                                  },
                                                  "end": {
                                                    "line": 343,
                                                    "column": 83
                                                  }
                                                },
                                                "name": "y"
                                              },
                                              {
                                                "type": "Identifier",
                                                "start": 14375,
                                                "end": 14376,
                                                "loc": {
                                                  "start": {
                                                    "line": 343,
                                                    "column": 85
                                                  },
                                                  "end": {
                                                    "line": 343,
                                                    "column": 86
                                                  }
                                                },
                                                "name": "z"
                                              }
                                            ]
                                          }
                                        }
                                      }
                                    ]
                                  }
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "ForStatement",
                            "start": 14407,
                            "end": 15449,
                            "loc": {
                              "start": {
                                "line": 346,
                                "column": 12
                              },
                              "end": {
                                "line": 367,
                                "column": 13
                              }
                            },
                            "init": {
                              "type": "VariableDeclaration",
                              "start": 14411,
                              "end": 14420,
                              "loc": {
                                "start": {
                                  "line": 346,
                                  "column": 16
                                },
                                "end": {
                                  "line": 346,
                                  "column": 25
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 14415,
                                  "end": 14420,
                                  "loc": {
                                    "start": {
                                      "line": 346,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 346,
                                      "column": 25
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 14415,
                                    "end": 14416,
                                    "loc": {
                                      "start": {
                                        "line": 346,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 346,
                                        "column": 21
                                      }
                                    },
                                    "name": "i"
                                  },
                                  "init": {
                                    "type": "Literal",
                                    "start": 14419,
                                    "end": 14420,
                                    "loc": {
                                      "start": {
                                        "line": 346,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 346,
                                        "column": 25
                                      }
                                    },
                                    "value": 1,
                                    "rawValue": 1,
                                    "raw": "1"
                                  }
                                }
                              ],
                              "kind": "var"
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 14422,
                              "end": 14440,
                              "loc": {
                                "start": {
                                  "line": 346,
                                  "column": 27
                                },
                                "end": {
                                  "line": 346,
                                  "column": 45
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 14422,
                                "end": 14423,
                                "loc": {
                                  "start": {
                                    "line": 346,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 346,
                                    "column": 28
                                  }
                                },
                                "name": "i"
                              },
                              "operator": "<=",
                              "right": {
                                "type": "MemberExpression",
                                "start": 14427,
                                "end": 14440,
                                "loc": {
                                  "start": {
                                    "line": 346,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 346,
                                    "column": 45
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 14427,
                                  "end": 14431,
                                  "loc": {
                                    "start": {
                                      "line": 346,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 346,
                                      "column": 36
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 14432,
                                  "end": 14440,
                                  "loc": {
                                    "start": {
                                      "line": 346,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 346,
                                      "column": 45
                                    }
                                  },
                                  "name": "gridSize"
                                },
                                "computed": false
                              }
                            },
                            "update": {
                              "type": "UpdateExpression",
                              "start": 14442,
                              "end": 14445,
                              "loc": {
                                "start": {
                                  "line": 346,
                                  "column": 47
                                },
                                "end": {
                                  "line": 346,
                                  "column": 50
                                }
                              },
                              "operator": "++",
                              "prefix": true,
                              "argument": {
                                "type": "Identifier",
                                "start": 14444,
                                "end": 14445,
                                "loc": {
                                  "start": {
                                    "line": 346,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 346,
                                    "column": 50
                                  }
                                },
                                "name": "i"
                              }
                            },
                            "body": {
                              "type": "BlockStatement",
                              "start": 14447,
                              "end": 15449,
                              "loc": {
                                "start": {
                                  "line": 346,
                                  "column": 52
                                },
                                "end": {
                                  "line": 367,
                                  "column": 13
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 14465,
                                  "end": 14506,
                                  "loc": {
                                    "start": {
                                      "line": 347,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 347,
                                      "column": 57
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 14465,
                                    "end": 14505,
                                    "loc": {
                                      "start": {
                                        "line": 347,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 347,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 14465,
                                      "end": 14474,
                                      "loc": {
                                        "start": {
                                          "line": 347,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 347,
                                          "column": 25
                                        }
                                      },
                                      "name": "addToGrid"
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14475,
                                        "end": 14490,
                                        "loc": {
                                          "start": {
                                            "line": 347,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 347,
                                            "column": 41
                                          }
                                        },
                                        "left": {
                                          "type": "UnaryExpression",
                                          "start": 14475,
                                          "end": 14486,
                                          "loc": {
                                            "start": {
                                              "line": 347,
                                              "column": 26
                                            },
                                            "end": {
                                              "line": 347,
                                              "column": 37
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Identifier",
                                            "start": 14476,
                                            "end": 14486,
                                            "loc": {
                                              "start": {
                                                "line": 347,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 347,
                                                "column": 37
                                              }
                                            },
                                            "name": "screenSize"
                                          }
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Literal",
                                          "start": 14489,
                                          "end": 14490,
                                          "loc": {
                                            "start": {
                                              "line": 347,
                                              "column": 40
                                            },
                                            "end": {
                                              "line": 347,
                                              "column": 41
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14493,
                                        "end": 14501,
                                        "loc": {
                                          "start": {
                                            "line": 347,
                                            "column": 44
                                          },
                                          "end": {
                                            "line": 347,
                                            "column": 52
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 14493,
                                          "end": 14497,
                                          "loc": {
                                            "start": {
                                              "line": 347,
                                              "column": 44
                                            },
                                            "end": {
                                              "line": 347,
                                              "column": 48
                                            }
                                          },
                                          "name": "step"
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 14500,
                                          "end": 14501,
                                          "loc": {
                                            "start": {
                                              "line": 347,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 347,
                                              "column": 52
                                            }
                                          },
                                          "name": "i"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 14503,
                                        "end": 14504,
                                        "loc": {
                                          "start": {
                                            "line": 347,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 347,
                                            "column": 55
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 14523,
                                  "end": 14564,
                                  "loc": {
                                    "start": {
                                      "line": 348,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 348,
                                      "column": 57
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 14523,
                                    "end": 14563,
                                    "loc": {
                                      "start": {
                                        "line": 348,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 348,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 14523,
                                      "end": 14532,
                                      "loc": {
                                        "start": {
                                          "line": 348,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 348,
                                          "column": 25
                                        }
                                      },
                                      "name": "addToGrid"
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14534,
                                        "end": 14548,
                                        "loc": {
                                          "start": {
                                            "line": 348,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 348,
                                            "column": 41
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 14534,
                                          "end": 14544,
                                          "loc": {
                                            "start": {
                                              "line": 348,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 348,
                                              "column": 37
                                            }
                                          },
                                          "name": "screenSize"
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Literal",
                                          "start": 14547,
                                          "end": 14548,
                                          "loc": {
                                            "start": {
                                              "line": 348,
                                              "column": 40
                                            },
                                            "end": {
                                              "line": 348,
                                              "column": 41
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14551,
                                        "end": 14559,
                                        "loc": {
                                          "start": {
                                            "line": 348,
                                            "column": 44
                                          },
                                          "end": {
                                            "line": 348,
                                            "column": 52
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 14551,
                                          "end": 14555,
                                          "loc": {
                                            "start": {
                                              "line": 348,
                                              "column": 44
                                            },
                                            "end": {
                                              "line": 348,
                                              "column": 48
                                            }
                                          },
                                          "name": "step"
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 14558,
                                          "end": 14559,
                                          "loc": {
                                            "start": {
                                              "line": 348,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 348,
                                              "column": 52
                                            }
                                          },
                                          "name": "i"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 14561,
                                        "end": 14562,
                                        "loc": {
                                          "start": {
                                            "line": 348,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 348,
                                            "column": 55
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 14581,
                                  "end": 14622,
                                  "loc": {
                                    "start": {
                                      "line": 349,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 349,
                                      "column": 57
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 14581,
                                    "end": 14621,
                                    "loc": {
                                      "start": {
                                        "line": 349,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 349,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 14581,
                                      "end": 14590,
                                      "loc": {
                                        "start": {
                                          "line": 349,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 349,
                                          "column": 25
                                        }
                                      },
                                      "name": "addToGrid"
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14591,
                                        "end": 14606,
                                        "loc": {
                                          "start": {
                                            "line": 349,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 349,
                                            "column": 41
                                          }
                                        },
                                        "left": {
                                          "type": "UnaryExpression",
                                          "start": 14591,
                                          "end": 14602,
                                          "loc": {
                                            "start": {
                                              "line": 349,
                                              "column": 26
                                            },
                                            "end": {
                                              "line": 349,
                                              "column": 37
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Identifier",
                                            "start": 14592,
                                            "end": 14602,
                                            "loc": {
                                              "start": {
                                                "line": 349,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 349,
                                                "column": 37
                                              }
                                            },
                                            "name": "screenSize"
                                          }
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Literal",
                                          "start": 14605,
                                          "end": 14606,
                                          "loc": {
                                            "start": {
                                              "line": 349,
                                              "column": 40
                                            },
                                            "end": {
                                              "line": 349,
                                              "column": 41
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14608,
                                        "end": 14617,
                                        "loc": {
                                          "start": {
                                            "line": 349,
                                            "column": 43
                                          },
                                          "end": {
                                            "line": 349,
                                            "column": 52
                                          }
                                        },
                                        "left": {
                                          "type": "UnaryExpression",
                                          "start": 14608,
                                          "end": 14613,
                                          "loc": {
                                            "start": {
                                              "line": 349,
                                              "column": 43
                                            },
                                            "end": {
                                              "line": 349,
                                              "column": 48
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Identifier",
                                            "start": 14609,
                                            "end": 14613,
                                            "loc": {
                                              "start": {
                                                "line": 349,
                                                "column": 44
                                              },
                                              "end": {
                                                "line": 349,
                                                "column": 48
                                              }
                                            },
                                            "name": "step"
                                          }
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 14616,
                                          "end": 14617,
                                          "loc": {
                                            "start": {
                                              "line": 349,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 349,
                                              "column": 52
                                            }
                                          },
                                          "name": "i"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 14619,
                                        "end": 14620,
                                        "loc": {
                                          "start": {
                                            "line": 349,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 349,
                                            "column": 55
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 14639,
                                  "end": 14680,
                                  "loc": {
                                    "start": {
                                      "line": 350,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 350,
                                      "column": 57
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 14639,
                                    "end": 14679,
                                    "loc": {
                                      "start": {
                                        "line": 350,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 350,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 14639,
                                      "end": 14648,
                                      "loc": {
                                        "start": {
                                          "line": 350,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 350,
                                          "column": 25
                                        }
                                      },
                                      "name": "addToGrid"
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14650,
                                        "end": 14664,
                                        "loc": {
                                          "start": {
                                            "line": 350,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 350,
                                            "column": 41
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 14650,
                                          "end": 14660,
                                          "loc": {
                                            "start": {
                                              "line": 350,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 350,
                                              "column": 37
                                            }
                                          },
                                          "name": "screenSize"
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Literal",
                                          "start": 14663,
                                          "end": 14664,
                                          "loc": {
                                            "start": {
                                              "line": 350,
                                              "column": 40
                                            },
                                            "end": {
                                              "line": 350,
                                              "column": 41
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14666,
                                        "end": 14675,
                                        "loc": {
                                          "start": {
                                            "line": 350,
                                            "column": 43
                                          },
                                          "end": {
                                            "line": 350,
                                            "column": 52
                                          }
                                        },
                                        "left": {
                                          "type": "UnaryExpression",
                                          "start": 14666,
                                          "end": 14671,
                                          "loc": {
                                            "start": {
                                              "line": 350,
                                              "column": 43
                                            },
                                            "end": {
                                              "line": 350,
                                              "column": 48
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Identifier",
                                            "start": 14667,
                                            "end": 14671,
                                            "loc": {
                                              "start": {
                                                "line": 350,
                                                "column": 44
                                              },
                                              "end": {
                                                "line": 350,
                                                "column": 48
                                              }
                                            },
                                            "name": "step"
                                          }
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 14674,
                                          "end": 14675,
                                          "loc": {
                                            "start": {
                                              "line": 350,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 350,
                                              "column": 52
                                            }
                                          },
                                          "name": "i"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 14677,
                                        "end": 14678,
                                        "loc": {
                                          "start": {
                                            "line": 350,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 350,
                                            "column": 55
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 14697,
                                  "end": 14738,
                                  "loc": {
                                    "start": {
                                      "line": 351,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 351,
                                      "column": 57
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 14697,
                                    "end": 14737,
                                    "loc": {
                                      "start": {
                                        "line": 351,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 351,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 14697,
                                      "end": 14706,
                                      "loc": {
                                        "start": {
                                          "line": 351,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 351,
                                          "column": 25
                                        }
                                      },
                                      "name": "addToGrid"
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14708,
                                        "end": 14716,
                                        "loc": {
                                          "start": {
                                            "line": 351,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 351,
                                            "column": 35
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 14708,
                                          "end": 14712,
                                          "loc": {
                                            "start": {
                                              "line": 351,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 351,
                                              "column": 31
                                            }
                                          },
                                          "name": "step"
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 14715,
                                          "end": 14716,
                                          "loc": {
                                            "start": {
                                              "line": 351,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 351,
                                              "column": 35
                                            }
                                          },
                                          "name": "i"
                                        }
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14719,
                                        "end": 14733,
                                        "loc": {
                                          "start": {
                                            "line": 351,
                                            "column": 38
                                          },
                                          "end": {
                                            "line": 351,
                                            "column": 52
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 14719,
                                          "end": 14729,
                                          "loc": {
                                            "start": {
                                              "line": 351,
                                              "column": 38
                                            },
                                            "end": {
                                              "line": 351,
                                              "column": 48
                                            }
                                          },
                                          "name": "screenSize"
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Literal",
                                          "start": 14732,
                                          "end": 14733,
                                          "loc": {
                                            "start": {
                                              "line": 351,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 351,
                                              "column": 52
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 14735,
                                        "end": 14736,
                                        "loc": {
                                          "start": {
                                            "line": 351,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 351,
                                            "column": 55
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 14755,
                                  "end": 14796,
                                  "loc": {
                                    "start": {
                                      "line": 352,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 352,
                                      "column": 57
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 14755,
                                    "end": 14795,
                                    "loc": {
                                      "start": {
                                        "line": 352,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 352,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 14755,
                                      "end": 14764,
                                      "loc": {
                                        "start": {
                                          "line": 352,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 352,
                                          "column": 25
                                        }
                                      },
                                      "name": "addToGrid"
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14766,
                                        "end": 14774,
                                        "loc": {
                                          "start": {
                                            "line": 352,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 352,
                                            "column": 35
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 14766,
                                          "end": 14770,
                                          "loc": {
                                            "start": {
                                              "line": 352,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 352,
                                              "column": 31
                                            }
                                          },
                                          "name": "step"
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 14773,
                                          "end": 14774,
                                          "loc": {
                                            "start": {
                                              "line": 352,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 352,
                                              "column": 35
                                            }
                                          },
                                          "name": "i"
                                        }
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14776,
                                        "end": 14791,
                                        "loc": {
                                          "start": {
                                            "line": 352,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 352,
                                            "column": 52
                                          }
                                        },
                                        "left": {
                                          "type": "UnaryExpression",
                                          "start": 14776,
                                          "end": 14787,
                                          "loc": {
                                            "start": {
                                              "line": 352,
                                              "column": 37
                                            },
                                            "end": {
                                              "line": 352,
                                              "column": 48
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Identifier",
                                            "start": 14777,
                                            "end": 14787,
                                            "loc": {
                                              "start": {
                                                "line": 352,
                                                "column": 38
                                              },
                                              "end": {
                                                "line": 352,
                                                "column": 48
                                              }
                                            },
                                            "name": "screenSize"
                                          }
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Literal",
                                          "start": 14790,
                                          "end": 14791,
                                          "loc": {
                                            "start": {
                                              "line": 352,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 352,
                                              "column": 52
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 14793,
                                        "end": 14794,
                                        "loc": {
                                          "start": {
                                            "line": 352,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 352,
                                            "column": 55
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 14813,
                                  "end": 14854,
                                  "loc": {
                                    "start": {
                                      "line": 353,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 353,
                                      "column": 57
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 14813,
                                    "end": 14853,
                                    "loc": {
                                      "start": {
                                        "line": 353,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 353,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 14813,
                                      "end": 14822,
                                      "loc": {
                                        "start": {
                                          "line": 353,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 353,
                                          "column": 25
                                        }
                                      },
                                      "name": "addToGrid"
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14823,
                                        "end": 14832,
                                        "loc": {
                                          "start": {
                                            "line": 353,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 353,
                                            "column": 35
                                          }
                                        },
                                        "left": {
                                          "type": "UnaryExpression",
                                          "start": 14823,
                                          "end": 14828,
                                          "loc": {
                                            "start": {
                                              "line": 353,
                                              "column": 26
                                            },
                                            "end": {
                                              "line": 353,
                                              "column": 31
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Identifier",
                                            "start": 14824,
                                            "end": 14828,
                                            "loc": {
                                              "start": {
                                                "line": 353,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 353,
                                                "column": 31
                                              }
                                            },
                                            "name": "step"
                                          }
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 14831,
                                          "end": 14832,
                                          "loc": {
                                            "start": {
                                              "line": 353,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 353,
                                              "column": 35
                                            }
                                          },
                                          "name": "i"
                                        }
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14835,
                                        "end": 14849,
                                        "loc": {
                                          "start": {
                                            "line": 353,
                                            "column": 38
                                          },
                                          "end": {
                                            "line": 353,
                                            "column": 52
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 14835,
                                          "end": 14845,
                                          "loc": {
                                            "start": {
                                              "line": 353,
                                              "column": 38
                                            },
                                            "end": {
                                              "line": 353,
                                              "column": 48
                                            }
                                          },
                                          "name": "screenSize"
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Literal",
                                          "start": 14848,
                                          "end": 14849,
                                          "loc": {
                                            "start": {
                                              "line": 353,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 353,
                                              "column": 52
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 14851,
                                        "end": 14852,
                                        "loc": {
                                          "start": {
                                            "line": 353,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 353,
                                            "column": 55
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 14871,
                                  "end": 14912,
                                  "loc": {
                                    "start": {
                                      "line": 354,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 354,
                                      "column": 57
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 14871,
                                    "end": 14911,
                                    "loc": {
                                      "start": {
                                        "line": 354,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 354,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 14871,
                                      "end": 14880,
                                      "loc": {
                                        "start": {
                                          "line": 354,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 354,
                                          "column": 25
                                        }
                                      },
                                      "name": "addToGrid"
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14881,
                                        "end": 14890,
                                        "loc": {
                                          "start": {
                                            "line": 354,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 354,
                                            "column": 35
                                          }
                                        },
                                        "left": {
                                          "type": "UnaryExpression",
                                          "start": 14881,
                                          "end": 14886,
                                          "loc": {
                                            "start": {
                                              "line": 354,
                                              "column": 26
                                            },
                                            "end": {
                                              "line": 354,
                                              "column": 31
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Identifier",
                                            "start": 14882,
                                            "end": 14886,
                                            "loc": {
                                              "start": {
                                                "line": 354,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 354,
                                                "column": 31
                                              }
                                            },
                                            "name": "step"
                                          }
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 14889,
                                          "end": 14890,
                                          "loc": {
                                            "start": {
                                              "line": 354,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 354,
                                              "column": 35
                                            }
                                          },
                                          "name": "i"
                                        }
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 14892,
                                        "end": 14907,
                                        "loc": {
                                          "start": {
                                            "line": 354,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 354,
                                            "column": 52
                                          }
                                        },
                                        "left": {
                                          "type": "UnaryExpression",
                                          "start": 14892,
                                          "end": 14903,
                                          "loc": {
                                            "start": {
                                              "line": 354,
                                              "column": 37
                                            },
                                            "end": {
                                              "line": 354,
                                              "column": 48
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Identifier",
                                            "start": 14893,
                                            "end": 14903,
                                            "loc": {
                                              "start": {
                                                "line": 354,
                                                "column": 38
                                              },
                                              "end": {
                                                "line": 354,
                                                "column": 48
                                              }
                                            },
                                            "name": "screenSize"
                                          }
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Literal",
                                          "start": 14906,
                                          "end": 14907,
                                          "loc": {
                                            "start": {
                                              "line": 354,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 354,
                                              "column": 52
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 14909,
                                        "end": 14910,
                                        "loc": {
                                          "start": {
                                            "line": 354,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 354,
                                            "column": 55
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 14929,
                                  "end": 15435,
                                  "loc": {
                                    "start": {
                                      "line": 355,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 366,
                                      "column": 17
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 14933,
                                    "end": 14940,
                                    "loc": {
                                      "start": {
                                        "line": 355,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 355,
                                        "column": 27
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 14933,
                                      "end": 14934,
                                      "loc": {
                                        "start": {
                                          "line": 355,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 355,
                                          "column": 21
                                        }
                                      },
                                      "name": "i"
                                    },
                                    "operator": "===",
                                    "right": {
                                      "type": "Literal",
                                      "start": 14939,
                                      "end": 14940,
                                      "loc": {
                                        "start": {
                                          "line": 355,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 355,
                                          "column": 27
                                        }
                                      },
                                      "value": 1,
                                      "rawValue": 1,
                                      "raw": "1"
                                    }
                                  },
                                  "consequent": {
                                    "type": "BlockStatement",
                                    "start": 14942,
                                    "end": 15435,
                                    "loc": {
                                      "start": {
                                        "line": 355,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 366,
                                        "column": 17
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 14997,
                                        "end": 15030,
                                        "loc": {
                                          "start": {
                                            "line": 357,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 357,
                                            "column": 53
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 14997,
                                          "end": 15029,
                                          "loc": {
                                            "start": {
                                              "line": 357,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 357,
                                              "column": 52
                                            }
                                          },
                                          "callee": {
                                            "type": "Identifier",
                                            "start": 14997,
                                            "end": 15006,
                                            "loc": {
                                              "start": {
                                                "line": 357,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 357,
                                                "column": 29
                                              }
                                            },
                                            "name": "addToGrid",
                                            "leadingComments": null
                                          },
                                          "arguments": [
                                            {
                                              "type": "BinaryExpression",
                                              "start": 15007,
                                              "end": 15022,
                                              "loc": {
                                                "start": {
                                                  "line": 357,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 357,
                                                  "column": 45
                                                }
                                              },
                                              "left": {
                                                "type": "UnaryExpression",
                                                "start": 15007,
                                                "end": 15018,
                                                "loc": {
                                                  "start": {
                                                    "line": 357,
                                                    "column": 30
                                                  },
                                                  "end": {
                                                    "line": 357,
                                                    "column": 41
                                                  }
                                                },
                                                "operator": "-",
                                                "prefix": true,
                                                "argument": {
                                                  "type": "Identifier",
                                                  "start": 15008,
                                                  "end": 15018,
                                                  "loc": {
                                                    "start": {
                                                      "line": 357,
                                                      "column": 31
                                                    },
                                                    "end": {
                                                      "line": 357,
                                                      "column": 41
                                                    }
                                                  },
                                                  "name": "screenSize"
                                                }
                                              },
                                              "operator": "/",
                                              "right": {
                                                "type": "Literal",
                                                "start": 15021,
                                                "end": 15022,
                                                "loc": {
                                                  "start": {
                                                    "line": 357,
                                                    "column": 44
                                                  },
                                                  "end": {
                                                    "line": 357,
                                                    "column": 45
                                                  }
                                                },
                                                "value": 2,
                                                "rawValue": 2,
                                                "raw": "2"
                                              }
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 15024,
                                              "end": 15025,
                                              "loc": {
                                                "start": {
                                                  "line": 357,
                                                  "column": 47
                                                },
                                                "end": {
                                                  "line": 357,
                                                  "column": 48
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 15027,
                                              "end": 15028,
                                              "loc": {
                                                "start": {
                                                  "line": 357,
                                                  "column": 50
                                                },
                                                "end": {
                                                  "line": 357,
                                                  "column": 51
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            }
                                          ],
                                          "leadingComments": null
                                        },
                                        "leadingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": " x \\ axisX",
                                            "start": 14964,
                                            "end": 14976,
                                            "loc": {
                                              "start": {
                                                "line": 356,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 356,
                                                "column": 32
                                              }
                                            },
                                            "range": [
                                              14964,
                                              14976
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 15051,
                                        "end": 15078,
                                        "loc": {
                                          "start": {
                                            "line": 358,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 358,
                                            "column": 47
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 15051,
                                          "end": 15077,
                                          "loc": {
                                            "start": {
                                              "line": 358,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 358,
                                              "column": 46
                                            }
                                          },
                                          "callee": {
                                            "type": "Identifier",
                                            "start": 15051,
                                            "end": 15060,
                                            "loc": {
                                              "start": {
                                                "line": 358,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 358,
                                                "column": 29
                                              }
                                            },
                                            "name": "addToGrid"
                                          },
                                          "arguments": [
                                            {
                                              "type": "UnaryExpression",
                                              "start": 15061,
                                              "end": 15070,
                                              "loc": {
                                                "start": {
                                                  "line": 358,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 358,
                                                  "column": 39
                                                }
                                              },
                                              "operator": "-",
                                              "prefix": true,
                                              "argument": {
                                                "type": "Identifier",
                                                "start": 15062,
                                                "end": 15070,
                                                "loc": {
                                                  "start": {
                                                    "line": 358,
                                                    "column": 31
                                                  },
                                                  "end": {
                                                    "line": 358,
                                                    "column": 39
                                                  }
                                                },
                                                "name": "axisSize"
                                              }
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 15072,
                                              "end": 15073,
                                              "loc": {
                                                "start": {
                                                  "line": 358,
                                                  "column": 41
                                                },
                                                "end": {
                                                  "line": 358,
                                                  "column": 42
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 15075,
                                              "end": 15076,
                                              "loc": {
                                                "start": {
                                                  "line": 358,
                                                  "column": 44
                                                },
                                                "end": {
                                                  "line": 358,
                                                  "column": 45
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            }
                                          ]
                                        }
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 15099,
                                        "end": 15132,
                                        "loc": {
                                          "start": {
                                            "line": 359,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 359,
                                            "column": 53
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 15099,
                                          "end": 15131,
                                          "loc": {
                                            "start": {
                                              "line": 359,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 359,
                                              "column": 52
                                            }
                                          },
                                          "callee": {
                                            "type": "Identifier",
                                            "start": 15099,
                                            "end": 15108,
                                            "loc": {
                                              "start": {
                                                "line": 359,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 359,
                                                "column": 29
                                              }
                                            },
                                            "name": "addToGrid"
                                          },
                                          "arguments": [
                                            {
                                              "type": "BinaryExpression",
                                              "start": 15110,
                                              "end": 15124,
                                              "loc": {
                                                "start": {
                                                  "line": 359,
                                                  "column": 31
                                                },
                                                "end": {
                                                  "line": 359,
                                                  "column": 45
                                                }
                                              },
                                              "left": {
                                                "type": "Identifier",
                                                "start": 15110,
                                                "end": 15120,
                                                "loc": {
                                                  "start": {
                                                    "line": 359,
                                                    "column": 31
                                                  },
                                                  "end": {
                                                    "line": 359,
                                                    "column": 41
                                                  }
                                                },
                                                "name": "screenSize"
                                              },
                                              "operator": "/",
                                              "right": {
                                                "type": "Literal",
                                                "start": 15123,
                                                "end": 15124,
                                                "loc": {
                                                  "start": {
                                                    "line": 359,
                                                    "column": 44
                                                  },
                                                  "end": {
                                                    "line": 359,
                                                    "column": 45
                                                  }
                                                },
                                                "value": 2,
                                                "rawValue": 2,
                                                "raw": "2"
                                              }
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 15126,
                                              "end": 15127,
                                              "loc": {
                                                "start": {
                                                  "line": 359,
                                                  "column": 47
                                                },
                                                "end": {
                                                  "line": 359,
                                                  "column": 48
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 15129,
                                              "end": 15130,
                                              "loc": {
                                                "start": {
                                                  "line": 359,
                                                  "column": 50
                                                },
                                                "end": {
                                                  "line": 359,
                                                  "column": 51
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            }
                                          ]
                                        }
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 15153,
                                        "end": 15180,
                                        "loc": {
                                          "start": {
                                            "line": 360,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 360,
                                            "column": 47
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 15153,
                                          "end": 15179,
                                          "loc": {
                                            "start": {
                                              "line": 360,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 360,
                                              "column": 46
                                            }
                                          },
                                          "callee": {
                                            "type": "Identifier",
                                            "start": 15153,
                                            "end": 15162,
                                            "loc": {
                                              "start": {
                                                "line": 360,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 360,
                                                "column": 29
                                              }
                                            },
                                            "name": "addToGrid"
                                          },
                                          "arguments": [
                                            {
                                              "type": "Identifier",
                                              "start": 15164,
                                              "end": 15172,
                                              "loc": {
                                                "start": {
                                                  "line": 360,
                                                  "column": 31
                                                },
                                                "end": {
                                                  "line": 360,
                                                  "column": 39
                                                }
                                              },
                                              "name": "axisSize"
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 15174,
                                              "end": 15175,
                                              "loc": {
                                                "start": {
                                                  "line": 360,
                                                  "column": 41
                                                },
                                                "end": {
                                                  "line": 360,
                                                  "column": 42
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 15177,
                                              "end": 15178,
                                              "loc": {
                                                "start": {
                                                  "line": 360,
                                                  "column": 44
                                                },
                                                "end": {
                                                  "line": 360,
                                                  "column": 45
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            }
                                          ]
                                        },
                                        "trailingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": " y \\ axisY",
                                            "start": 15201,
                                            "end": 15213,
                                            "loc": {
                                              "start": {
                                                "line": 361,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 361,
                                                "column": 32
                                              }
                                            },
                                            "range": [
                                              15201,
                                              15213
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 15234,
                                        "end": 15267,
                                        "loc": {
                                          "start": {
                                            "line": 362,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 362,
                                            "column": 53
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 15234,
                                          "end": 15266,
                                          "loc": {
                                            "start": {
                                              "line": 362,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 362,
                                              "column": 52
                                            }
                                          },
                                          "callee": {
                                            "type": "Identifier",
                                            "start": 15234,
                                            "end": 15243,
                                            "loc": {
                                              "start": {
                                                "line": 362,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 362,
                                                "column": 29
                                              }
                                            },
                                            "name": "addToGrid",
                                            "leadingComments": null
                                          },
                                          "arguments": [
                                            {
                                              "type": "Literal",
                                              "start": 15244,
                                              "end": 15245,
                                              "loc": {
                                                "start": {
                                                  "line": 362,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 362,
                                                  "column": 31
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            },
                                            {
                                              "type": "BinaryExpression",
                                              "start": 15248,
                                              "end": 15262,
                                              "loc": {
                                                "start": {
                                                  "line": 362,
                                                  "column": 34
                                                },
                                                "end": {
                                                  "line": 362,
                                                  "column": 48
                                                }
                                              },
                                              "left": {
                                                "type": "Identifier",
                                                "start": 15248,
                                                "end": 15258,
                                                "loc": {
                                                  "start": {
                                                    "line": 362,
                                                    "column": 34
                                                  },
                                                  "end": {
                                                    "line": 362,
                                                    "column": 44
                                                  }
                                                },
                                                "name": "screenSize"
                                              },
                                              "operator": "/",
                                              "right": {
                                                "type": "Literal",
                                                "start": 15261,
                                                "end": 15262,
                                                "loc": {
                                                  "start": {
                                                    "line": 362,
                                                    "column": 47
                                                  },
                                                  "end": {
                                                    "line": 362,
                                                    "column": 48
                                                  }
                                                },
                                                "value": 2,
                                                "rawValue": 2,
                                                "raw": "2"
                                              }
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 15264,
                                              "end": 15265,
                                              "loc": {
                                                "start": {
                                                  "line": 362,
                                                  "column": 50
                                                },
                                                "end": {
                                                  "line": 362,
                                                  "column": 51
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            }
                                          ],
                                          "leadingComments": null
                                        },
                                        "leadingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": " y \\ axisY",
                                            "start": 15201,
                                            "end": 15213,
                                            "loc": {
                                              "start": {
                                                "line": 361,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 361,
                                                "column": 32
                                              }
                                            },
                                            "range": [
                                              15201,
                                              15213
                                            ]
                                          }
                                        ]
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 15288,
                                        "end": 15315,
                                        "loc": {
                                          "start": {
                                            "line": 363,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 363,
                                            "column": 47
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 15288,
                                          "end": 15314,
                                          "loc": {
                                            "start": {
                                              "line": 363,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 363,
                                              "column": 46
                                            }
                                          },
                                          "callee": {
                                            "type": "Identifier",
                                            "start": 15288,
                                            "end": 15297,
                                            "loc": {
                                              "start": {
                                                "line": 363,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 363,
                                                "column": 29
                                              }
                                            },
                                            "name": "addToGrid"
                                          },
                                          "arguments": [
                                            {
                                              "type": "Literal",
                                              "start": 15298,
                                              "end": 15299,
                                              "loc": {
                                                "start": {
                                                  "line": 363,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 363,
                                                  "column": 31
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            },
                                            {
                                              "type": "Identifier",
                                              "start": 15302,
                                              "end": 15310,
                                              "loc": {
                                                "start": {
                                                  "line": 363,
                                                  "column": 34
                                                },
                                                "end": {
                                                  "line": 363,
                                                  "column": 42
                                                }
                                              },
                                              "name": "axisSize"
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 15312,
                                              "end": 15313,
                                              "loc": {
                                                "start": {
                                                  "line": 363,
                                                  "column": 44
                                                },
                                                "end": {
                                                  "line": 363,
                                                  "column": 45
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            }
                                          ]
                                        }
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 15336,
                                        "end": 15369,
                                        "loc": {
                                          "start": {
                                            "line": 364,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 364,
                                            "column": 53
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 15336,
                                          "end": 15368,
                                          "loc": {
                                            "start": {
                                              "line": 364,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 364,
                                              "column": 52
                                            }
                                          },
                                          "callee": {
                                            "type": "Identifier",
                                            "start": 15336,
                                            "end": 15345,
                                            "loc": {
                                              "start": {
                                                "line": 364,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 364,
                                                "column": 29
                                              }
                                            },
                                            "name": "addToGrid"
                                          },
                                          "arguments": [
                                            {
                                              "type": "Literal",
                                              "start": 15346,
                                              "end": 15347,
                                              "loc": {
                                                "start": {
                                                  "line": 364,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 364,
                                                  "column": 31
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            },
                                            {
                                              "type": "BinaryExpression",
                                              "start": 15349,
                                              "end": 15364,
                                              "loc": {
                                                "start": {
                                                  "line": 364,
                                                  "column": 33
                                                },
                                                "end": {
                                                  "line": 364,
                                                  "column": 48
                                                }
                                              },
                                              "left": {
                                                "type": "UnaryExpression",
                                                "start": 15349,
                                                "end": 15360,
                                                "loc": {
                                                  "start": {
                                                    "line": 364,
                                                    "column": 33
                                                  },
                                                  "end": {
                                                    "line": 364,
                                                    "column": 44
                                                  }
                                                },
                                                "operator": "-",
                                                "prefix": true,
                                                "argument": {
                                                  "type": "Identifier",
                                                  "start": 15350,
                                                  "end": 15360,
                                                  "loc": {
                                                    "start": {
                                                      "line": 364,
                                                      "column": 34
                                                    },
                                                    "end": {
                                                      "line": 364,
                                                      "column": 44
                                                    }
                                                  },
                                                  "name": "screenSize"
                                                }
                                              },
                                              "operator": "/",
                                              "right": {
                                                "type": "Literal",
                                                "start": 15363,
                                                "end": 15364,
                                                "loc": {
                                                  "start": {
                                                    "line": 364,
                                                    "column": 47
                                                  },
                                                  "end": {
                                                    "line": 364,
                                                    "column": 48
                                                  }
                                                },
                                                "value": 2,
                                                "rawValue": 2,
                                                "raw": "2"
                                              }
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 15366,
                                              "end": 15367,
                                              "loc": {
                                                "start": {
                                                  "line": 364,
                                                  "column": 50
                                                },
                                                "end": {
                                                  "line": 364,
                                                  "column": 51
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            }
                                          ]
                                        }
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 15390,
                                        "end": 15417,
                                        "loc": {
                                          "start": {
                                            "line": 365,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 365,
                                            "column": 47
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 15390,
                                          "end": 15416,
                                          "loc": {
                                            "start": {
                                              "line": 365,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 365,
                                              "column": 46
                                            }
                                          },
                                          "callee": {
                                            "type": "Identifier",
                                            "start": 15390,
                                            "end": 15399,
                                            "loc": {
                                              "start": {
                                                "line": 365,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 365,
                                                "column": 29
                                              }
                                            },
                                            "name": "addToGrid"
                                          },
                                          "arguments": [
                                            {
                                              "type": "Literal",
                                              "start": 15400,
                                              "end": 15401,
                                              "loc": {
                                                "start": {
                                                  "line": 365,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 365,
                                                  "column": 31
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            },
                                            {
                                              "type": "UnaryExpression",
                                              "start": 15403,
                                              "end": 15412,
                                              "loc": {
                                                "start": {
                                                  "line": 365,
                                                  "column": 33
                                                },
                                                "end": {
                                                  "line": 365,
                                                  "column": 42
                                                }
                                              },
                                              "operator": "-",
                                              "prefix": true,
                                              "argument": {
                                                "type": "Identifier",
                                                "start": 15404,
                                                "end": 15412,
                                                "loc": {
                                                  "start": {
                                                    "line": 365,
                                                    "column": 34
                                                  },
                                                  "end": {
                                                    "line": 365,
                                                    "column": 42
                                                  }
                                                },
                                                "name": "axisSize"
                                              }
                                            },
                                            {
                                              "type": "Literal",
                                              "start": 15414,
                                              "end": 15415,
                                              "loc": {
                                                "start": {
                                                  "line": 365,
                                                  "column": 44
                                                },
                                                "end": {
                                                  "line": 365,
                                                  "column": 45
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  },
                                  "alternate": null
                                }
                              ],
                              "trailingComments": null
                            },
                            "trailingComments": [
                              {
                                "type": "CommentLine",
                                "value": " axis",
                                "start": 15463,
                                "end": 15470,
                                "loc": {
                                  "start": {
                                    "line": 369,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 369,
                                    "column": 19
                                  }
                                },
                                "range": [
                                  15463,
                                  15470
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 15483,
                            "end": 15510,
                            "loc": {
                              "start": {
                                "line": 370,
                                "column": 12
                              },
                              "end": {
                                "line": 370,
                                "column": 39
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 15483,
                              "end": 15509,
                              "loc": {
                                "start": {
                                  "line": 370,
                                  "column": 12
                                },
                                "end": {
                                  "line": 370,
                                  "column": 38
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 15483,
                                "end": 15492,
                                "loc": {
                                  "start": {
                                    "line": 370,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 370,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis",
                                "leadingComments": null
                              },
                              "arguments": [
                                {
                                  "type": "UnaryExpression",
                                  "start": 15493,
                                  "end": 15502,
                                  "loc": {
                                    "start": {
                                      "line": 370,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 370,
                                      "column": 31
                                    }
                                  },
                                  "operator": "-",
                                  "prefix": true,
                                  "argument": {
                                    "type": "Identifier",
                                    "start": 15494,
                                    "end": 15502,
                                    "loc": {
                                      "start": {
                                        "line": 370,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 370,
                                        "column": 31
                                      }
                                    },
                                    "name": "axisSize"
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 15504,
                                  "end": 15505,
                                  "loc": {
                                    "start": {
                                      "line": 370,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 370,
                                      "column": 34
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Literal",
                                  "start": 15507,
                                  "end": 15508,
                                  "loc": {
                                    "start": {
                                      "line": 370,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 370,
                                      "column": 37
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ],
                              "leadingComments": null
                            },
                            "leadingComments": [
                              {
                                "type": "CommentLine",
                                "value": " axis",
                                "start": 15463,
                                "end": 15470,
                                "loc": {
                                  "start": {
                                    "line": 369,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 369,
                                    "column": 19
                                  }
                                },
                                "range": [
                                  15463,
                                  15470
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 15523,
                            "end": 15550,
                            "loc": {
                              "start": {
                                "line": 371,
                                "column": 12
                              },
                              "end": {
                                "line": 371,
                                "column": 39
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 15523,
                              "end": 15549,
                              "loc": {
                                "start": {
                                  "line": 371,
                                  "column": 12
                                },
                                "end": {
                                  "line": 371,
                                  "column": 38
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 15523,
                                "end": 15532,
                                "loc": {
                                  "start": {
                                    "line": 371,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 371,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 15534,
                                  "end": 15542,
                                  "loc": {
                                    "start": {
                                      "line": 371,
                                      "column": 23
                                    },
                                    "end": {
                                      "line": 371,
                                      "column": 31
                                    }
                                  },
                                  "name": "axisSize"
                                },
                                {
                                  "type": "Literal",
                                  "start": 15544,
                                  "end": 15545,
                                  "loc": {
                                    "start": {
                                      "line": 371,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 371,
                                      "column": 34
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Literal",
                                  "start": 15547,
                                  "end": 15548,
                                  "loc": {
                                    "start": {
                                      "line": 371,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 371,
                                      "column": 37
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 15563,
                            "end": 15590,
                            "loc": {
                              "start": {
                                "line": 372,
                                "column": 12
                              },
                              "end": {
                                "line": 372,
                                "column": 39
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 15563,
                              "end": 15589,
                              "loc": {
                                "start": {
                                  "line": 372,
                                  "column": 12
                                },
                                "end": {
                                  "line": 372,
                                  "column": 38
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 15563,
                                "end": 15572,
                                "loc": {
                                  "start": {
                                    "line": 372,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 372,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 15573,
                                  "end": 15574,
                                  "loc": {
                                    "start": {
                                      "line": 372,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 372,
                                      "column": 23
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "UnaryExpression",
                                  "start": 15576,
                                  "end": 15585,
                                  "loc": {
                                    "start": {
                                      "line": 372,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 372,
                                      "column": 34
                                    }
                                  },
                                  "operator": "-",
                                  "prefix": true,
                                  "argument": {
                                    "type": "Identifier",
                                    "start": 15577,
                                    "end": 15585,
                                    "loc": {
                                      "start": {
                                        "line": 372,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 372,
                                        "column": 34
                                      }
                                    },
                                    "name": "axisSize"
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 15587,
                                  "end": 15588,
                                  "loc": {
                                    "start": {
                                      "line": 372,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 372,
                                      "column": 37
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 15603,
                            "end": 15630,
                            "loc": {
                              "start": {
                                "line": 373,
                                "column": 12
                              },
                              "end": {
                                "line": 373,
                                "column": 39
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 15603,
                              "end": 15629,
                              "loc": {
                                "start": {
                                  "line": 373,
                                  "column": 12
                                },
                                "end": {
                                  "line": 373,
                                  "column": 38
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 15603,
                                "end": 15612,
                                "loc": {
                                  "start": {
                                    "line": 373,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 373,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 15613,
                                  "end": 15614,
                                  "loc": {
                                    "start": {
                                      "line": 373,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 373,
                                      "column": 23
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 15617,
                                  "end": 15625,
                                  "loc": {
                                    "start": {
                                      "line": 373,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 373,
                                      "column": 34
                                    }
                                  },
                                  "name": "axisSize"
                                },
                                {
                                  "type": "Literal",
                                  "start": 15627,
                                  "end": 15628,
                                  "loc": {
                                    "start": {
                                      "line": 373,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 373,
                                      "column": 37
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            },
                            "trailingComments": [
                              {
                                "type": "CommentLine",
                                "value": " arrows",
                                "start": 15643,
                                "end": 15652,
                                "loc": {
                                  "start": {
                                    "line": 374,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 374,
                                    "column": 21
                                  }
                                },
                                "range": [
                                  15643,
                                  15652
                                ]
                              }
                            ]
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 15665,
                            "end": 15698,
                            "loc": {
                              "start": {
                                "line": 375,
                                "column": 12
                              },
                              "end": {
                                "line": 375,
                                "column": 45
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 15669,
                                "end": 15697,
                                "loc": {
                                  "start": {
                                    "line": 375,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 375,
                                    "column": 44
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 15669,
                                  "end": 15679,
                                  "loc": {
                                    "start": {
                                      "line": 375,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 375,
                                      "column": 26
                                    }
                                  },
                                  "name": "arrowWidth",
                                  "leadingComments": null
                                },
                                "init": {
                                  "type": "BinaryExpression",
                                  "start": 15682,
                                  "end": 15697,
                                  "loc": {
                                    "start": {
                                      "line": 375,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 375,
                                      "column": 44
                                    }
                                  },
                                  "left": {
                                    "type": "MemberExpression",
                                    "start": 15682,
                                    "end": 15695,
                                    "loc": {
                                      "start": {
                                        "line": 375,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 375,
                                        "column": 42
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 15682,
                                      "end": 15686,
                                      "loc": {
                                        "start": {
                                          "line": 375,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 375,
                                          "column": 33
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 15687,
                                      "end": 15695,
                                      "loc": {
                                        "start": {
                                          "line": 375,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 375,
                                          "column": 42
                                        }
                                      },
                                      "name": "gridStep"
                                    },
                                    "computed": false
                                  },
                                  "operator": "/",
                                  "right": {
                                    "type": "Literal",
                                    "start": 15696,
                                    "end": 15697,
                                    "loc": {
                                      "start": {
                                        "line": 375,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 375,
                                        "column": 44
                                      }
                                    },
                                    "value": 4,
                                    "rawValue": 4,
                                    "raw": "4"
                                  }
                                },
                                "leadingComments": null
                              }
                            ],
                            "kind": "var",
                            "leadingComments": [
                              {
                                "type": "CommentLine",
                                "value": " arrows",
                                "start": 15643,
                                "end": 15652,
                                "loc": {
                                  "start": {
                                    "line": 374,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 374,
                                    "column": 21
                                  }
                                },
                                "range": [
                                  15643,
                                  15652
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 15711,
                            "end": 15764,
                            "loc": {
                              "start": {
                                "line": 376,
                                "column": 12
                              },
                              "end": {
                                "line": 376,
                                "column": 65
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 15711,
                              "end": 15763,
                              "loc": {
                                "start": {
                                  "line": 376,
                                  "column": 12
                                },
                                "end": {
                                  "line": 376,
                                  "column": 64
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 15711,
                                "end": 15720,
                                "loc": {
                                  "start": {
                                    "line": 376,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 376,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 15721,
                                  "end": 15745,
                                  "loc": {
                                    "start": {
                                      "line": 376,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 376,
                                      "column": 46
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 15721,
                                    "end": 15729,
                                    "loc": {
                                      "start": {
                                        "line": 376,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 376,
                                        "column": 30
                                      }
                                    },
                                    "name": "axisSize"
                                  },
                                  "operator": "-",
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 15732,
                                    "end": 15745,
                                    "loc": {
                                      "start": {
                                        "line": 376,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 376,
                                        "column": 46
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 15732,
                                      "end": 15736,
                                      "loc": {
                                        "start": {
                                          "line": 376,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 376,
                                          "column": 37
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 15737,
                                      "end": 15745,
                                      "loc": {
                                        "start": {
                                          "line": 376,
                                          "column": 38
                                        },
                                        "end": {
                                          "line": 376,
                                          "column": 46
                                        }
                                      },
                                      "name": "gridStep"
                                    },
                                    "computed": false
                                  }
                                },
                                {
                                  "type": "UnaryExpression",
                                  "start": 15747,
                                  "end": 15759,
                                  "loc": {
                                    "start": {
                                      "line": 376,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 376,
                                      "column": 60
                                    }
                                  },
                                  "operator": "-",
                                  "prefix": true,
                                  "argument": {
                                    "type": "Identifier",
                                    "start": 15749,
                                    "end": 15759,
                                    "loc": {
                                      "start": {
                                        "line": 376,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 376,
                                        "column": 60
                                      }
                                    },
                                    "name": "arrowWidth"
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 15761,
                                  "end": 15762,
                                  "loc": {
                                    "start": {
                                      "line": 376,
                                      "column": 62
                                    },
                                    "end": {
                                      "line": 376,
                                      "column": 63
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 15777,
                            "end": 15803,
                            "loc": {
                              "start": {
                                "line": 377,
                                "column": 12
                              },
                              "end": {
                                "line": 377,
                                "column": 38
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 15777,
                              "end": 15802,
                              "loc": {
                                "start": {
                                  "line": 377,
                                  "column": 12
                                },
                                "end": {
                                  "line": 377,
                                  "column": 37
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 15777,
                                "end": 15786,
                                "loc": {
                                  "start": {
                                    "line": 377,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 377,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 15787,
                                  "end": 15795,
                                  "loc": {
                                    "start": {
                                      "line": 377,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 377,
                                      "column": 30
                                    }
                                  },
                                  "name": "axisSize"
                                },
                                {
                                  "type": "Literal",
                                  "start": 15797,
                                  "end": 15798,
                                  "loc": {
                                    "start": {
                                      "line": 377,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 377,
                                      "column": 33
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Literal",
                                  "start": 15800,
                                  "end": 15801,
                                  "loc": {
                                    "start": {
                                      "line": 377,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 377,
                                      "column": 36
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 15816,
                            "end": 15869,
                            "loc": {
                              "start": {
                                "line": 378,
                                "column": 12
                              },
                              "end": {
                                "line": 378,
                                "column": 65
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 15816,
                              "end": 15868,
                              "loc": {
                                "start": {
                                  "line": 378,
                                  "column": 12
                                },
                                "end": {
                                  "line": 378,
                                  "column": 64
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 15816,
                                "end": 15825,
                                "loc": {
                                  "start": {
                                    "line": 378,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 378,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 15826,
                                  "end": 15850,
                                  "loc": {
                                    "start": {
                                      "line": 378,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 378,
                                      "column": 46
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 15826,
                                    "end": 15834,
                                    "loc": {
                                      "start": {
                                        "line": 378,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 378,
                                        "column": 30
                                      }
                                    },
                                    "name": "axisSize"
                                  },
                                  "operator": "-",
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 15837,
                                    "end": 15850,
                                    "loc": {
                                      "start": {
                                        "line": 378,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 378,
                                        "column": 46
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 15837,
                                      "end": 15841,
                                      "loc": {
                                        "start": {
                                          "line": 378,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 378,
                                          "column": 37
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 15842,
                                      "end": 15850,
                                      "loc": {
                                        "start": {
                                          "line": 378,
                                          "column": 38
                                        },
                                        "end": {
                                          "line": 378,
                                          "column": 46
                                        }
                                      },
                                      "name": "gridStep"
                                    },
                                    "computed": false
                                  }
                                },
                                {
                                  "type": "UnaryExpression",
                                  "start": 15852,
                                  "end": 15864,
                                  "loc": {
                                    "start": {
                                      "line": 378,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 378,
                                      "column": 60
                                    }
                                  },
                                  "operator": "+",
                                  "prefix": true,
                                  "argument": {
                                    "type": "Identifier",
                                    "start": 15854,
                                    "end": 15864,
                                    "loc": {
                                      "start": {
                                        "line": 378,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 378,
                                        "column": 60
                                      }
                                    },
                                    "name": "arrowWidth"
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 15866,
                                  "end": 15867,
                                  "loc": {
                                    "start": {
                                      "line": 378,
                                      "column": 62
                                    },
                                    "end": {
                                      "line": 378,
                                      "column": 63
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 15882,
                            "end": 15908,
                            "loc": {
                              "start": {
                                "line": 379,
                                "column": 12
                              },
                              "end": {
                                "line": 379,
                                "column": 38
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 15882,
                              "end": 15907,
                              "loc": {
                                "start": {
                                  "line": 379,
                                  "column": 12
                                },
                                "end": {
                                  "line": 379,
                                  "column": 37
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 15882,
                                "end": 15891,
                                "loc": {
                                  "start": {
                                    "line": 379,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 379,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 15892,
                                  "end": 15900,
                                  "loc": {
                                    "start": {
                                      "line": 379,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 379,
                                      "column": 30
                                    }
                                  },
                                  "name": "axisSize"
                                },
                                {
                                  "type": "Literal",
                                  "start": 15902,
                                  "end": 15903,
                                  "loc": {
                                    "start": {
                                      "line": 379,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 379,
                                      "column": 33
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Literal",
                                  "start": 15905,
                                  "end": 15906,
                                  "loc": {
                                    "start": {
                                      "line": 379,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 379,
                                      "column": 36
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 15921,
                            "end": 15973,
                            "loc": {
                              "start": {
                                "line": 380,
                                "column": 12
                              },
                              "end": {
                                "line": 380,
                                "column": 64
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 15921,
                              "end": 15972,
                              "loc": {
                                "start": {
                                  "line": 380,
                                  "column": 12
                                },
                                "end": {
                                  "line": 380,
                                  "column": 63
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 15921,
                                "end": 15930,
                                "loc": {
                                  "start": {
                                    "line": 380,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 380,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "UnaryExpression",
                                  "start": 15931,
                                  "end": 15942,
                                  "loc": {
                                    "start": {
                                      "line": 380,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 380,
                                      "column": 33
                                    }
                                  },
                                  "operator": "-",
                                  "prefix": true,
                                  "argument": {
                                    "type": "Identifier",
                                    "start": 15932,
                                    "end": 15942,
                                    "loc": {
                                      "start": {
                                        "line": 380,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 380,
                                        "column": 33
                                      }
                                    },
                                    "name": "arrowWidth"
                                  }
                                },
                                {
                                  "type": "BinaryExpression",
                                  "start": 15944,
                                  "end": 15968,
                                  "loc": {
                                    "start": {
                                      "line": 380,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 380,
                                      "column": 59
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 15944,
                                    "end": 15952,
                                    "loc": {
                                      "start": {
                                        "line": 380,
                                        "column": 35
                                      },
                                      "end": {
                                        "line": 380,
                                        "column": 43
                                      }
                                    },
                                    "name": "axisSize"
                                  },
                                  "operator": "-",
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 15955,
                                    "end": 15968,
                                    "loc": {
                                      "start": {
                                        "line": 380,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 380,
                                        "column": 59
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 15955,
                                      "end": 15959,
                                      "loc": {
                                        "start": {
                                          "line": 380,
                                          "column": 46
                                        },
                                        "end": {
                                          "line": 380,
                                          "column": 50
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 15960,
                                      "end": 15968,
                                      "loc": {
                                        "start": {
                                          "line": 380,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 380,
                                          "column": 59
                                        }
                                      },
                                      "name": "gridStep"
                                    },
                                    "computed": false
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 15970,
                                  "end": 15971,
                                  "loc": {
                                    "start": {
                                      "line": 380,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 380,
                                      "column": 62
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 15986,
                            "end": 16012,
                            "loc": {
                              "start": {
                                "line": 381,
                                "column": 12
                              },
                              "end": {
                                "line": 381,
                                "column": 38
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 15986,
                              "end": 16011,
                              "loc": {
                                "start": {
                                  "line": 381,
                                  "column": 12
                                },
                                "end": {
                                  "line": 381,
                                  "column": 37
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 15986,
                                "end": 15995,
                                "loc": {
                                  "start": {
                                    "line": 381,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 381,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 15996,
                                  "end": 15997,
                                  "loc": {
                                    "start": {
                                      "line": 381,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 381,
                                      "column": 23
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 15999,
                                  "end": 16007,
                                  "loc": {
                                    "start": {
                                      "line": 381,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 381,
                                      "column": 33
                                    }
                                  },
                                  "name": "axisSize"
                                },
                                {
                                  "type": "Literal",
                                  "start": 16009,
                                  "end": 16010,
                                  "loc": {
                                    "start": {
                                      "line": 381,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 381,
                                      "column": 36
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16025,
                            "end": 16077,
                            "loc": {
                              "start": {
                                "line": 382,
                                "column": 12
                              },
                              "end": {
                                "line": 382,
                                "column": 64
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16025,
                              "end": 16076,
                              "loc": {
                                "start": {
                                  "line": 382,
                                  "column": 12
                                },
                                "end": {
                                  "line": 382,
                                  "column": 63
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16025,
                                "end": 16034,
                                "loc": {
                                  "start": {
                                    "line": 382,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 382,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 16036,
                                  "end": 16046,
                                  "loc": {
                                    "start": {
                                      "line": 382,
                                      "column": 23
                                    },
                                    "end": {
                                      "line": 382,
                                      "column": 33
                                    }
                                  },
                                  "name": "arrowWidth"
                                },
                                {
                                  "type": "BinaryExpression",
                                  "start": 16048,
                                  "end": 16072,
                                  "loc": {
                                    "start": {
                                      "line": 382,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 382,
                                      "column": 59
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 16048,
                                    "end": 16056,
                                    "loc": {
                                      "start": {
                                        "line": 382,
                                        "column": 35
                                      },
                                      "end": {
                                        "line": 382,
                                        "column": 43
                                      }
                                    },
                                    "name": "axisSize"
                                  },
                                  "operator": "-",
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 16059,
                                    "end": 16072,
                                    "loc": {
                                      "start": {
                                        "line": 382,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 382,
                                        "column": 59
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 16059,
                                      "end": 16063,
                                      "loc": {
                                        "start": {
                                          "line": 382,
                                          "column": 46
                                        },
                                        "end": {
                                          "line": 382,
                                          "column": 50
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 16064,
                                      "end": 16072,
                                      "loc": {
                                        "start": {
                                          "line": 382,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 382,
                                          "column": 59
                                        }
                                      },
                                      "name": "gridStep"
                                    },
                                    "computed": false
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 16074,
                                  "end": 16075,
                                  "loc": {
                                    "start": {
                                      "line": 382,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 382,
                                      "column": 62
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16090,
                            "end": 16116,
                            "loc": {
                              "start": {
                                "line": 383,
                                "column": 12
                              },
                              "end": {
                                "line": 383,
                                "column": 38
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16090,
                              "end": 16115,
                              "loc": {
                                "start": {
                                  "line": 383,
                                  "column": 12
                                },
                                "end": {
                                  "line": 383,
                                  "column": 37
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16090,
                                "end": 16099,
                                "loc": {
                                  "start": {
                                    "line": 383,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 383,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 16100,
                                  "end": 16101,
                                  "loc": {
                                    "start": {
                                      "line": 383,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 383,
                                      "column": 23
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 16103,
                                  "end": 16111,
                                  "loc": {
                                    "start": {
                                      "line": 383,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 383,
                                      "column": 33
                                    }
                                  },
                                  "name": "axisSize"
                                },
                                {
                                  "type": "Literal",
                                  "start": 16113,
                                  "end": 16114,
                                  "loc": {
                                    "start": {
                                      "line": 383,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 383,
                                      "column": 36
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            },
                            "trailingComments": [
                              {
                                "type": "CommentLine",
                                "value": " symbols \"x\", \"y\"",
                                "start": 16129,
                                "end": 16148,
                                "loc": {
                                  "start": {
                                    "line": 384,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 384,
                                    "column": 31
                                  }
                                },
                                "range": [
                                  16129,
                                  16148
                                ]
                              }
                            ]
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 16161,
                            "end": 16298,
                            "loc": {
                              "start": {
                                "line": 385,
                                "column": 12
                              },
                              "end": {
                                "line": 387,
                                "column": 49
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 16165,
                                "end": 16191,
                                "loc": {
                                  "start": {
                                    "line": 385,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 385,
                                    "column": 42
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 16165,
                                  "end": 16177,
                                  "loc": {
                                    "start": {
                                      "line": 385,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 385,
                                      "column": 28
                                    }
                                  },
                                  "name": "letterOffset",
                                  "leadingComments": null
                                },
                                "init": {
                                  "type": "BinaryExpression",
                                  "start": 16180,
                                  "end": 16191,
                                  "loc": {
                                    "start": {
                                      "line": 385,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 385,
                                      "column": 42
                                    }
                                  },
                                  "left": {
                                    "type": "BinaryExpression",
                                    "start": 16180,
                                    "end": 16188,
                                    "loc": {
                                      "start": {
                                        "line": 385,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 385,
                                        "column": 39
                                      }
                                    },
                                    "left": {
                                      "type": "Literal",
                                      "start": 16180,
                                      "end": 16181,
                                      "loc": {
                                        "start": {
                                          "line": 385,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 385,
                                          "column": 32
                                        }
                                      },
                                      "value": 3,
                                      "rawValue": 3,
                                      "raw": "3"
                                    },
                                    "operator": "*",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 16184,
                                      "end": 16188,
                                      "loc": {
                                        "start": {
                                          "line": 385,
                                          "column": 35
                                        },
                                        "end": {
                                          "line": 385,
                                          "column": 39
                                        }
                                      },
                                      "name": "step"
                                    }
                                  },
                                  "operator": "/",
                                  "right": {
                                    "type": "Literal",
                                    "start": 16189,
                                    "end": 16191,
                                    "loc": {
                                      "start": {
                                        "line": 385,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 385,
                                        "column": 42
                                      }
                                    },
                                    "value": 10,
                                    "rawValue": 10,
                                    "raw": "10"
                                  }
                                },
                                "leadingComments": null
                              },
                              {
                                "type": "VariableDeclarator",
                                "start": 16209,
                                "end": 16247,
                                "loc": {
                                  "start": {
                                    "line": 386,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 386,
                                    "column": 54
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 16209,
                                  "end": 16221,
                                  "loc": {
                                    "start": {
                                      "line": 386,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 386,
                                      "column": 28
                                    }
                                  },
                                  "name": "letterHeight"
                                },
                                "init": {
                                  "type": "BinaryExpression",
                                  "start": 16224,
                                  "end": 16247,
                                  "loc": {
                                    "start": {
                                      "line": 386,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 386,
                                      "column": 54
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 16224,
                                    "end": 16228,
                                    "loc": {
                                      "start": {
                                        "line": 386,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 386,
                                        "column": 35
                                      }
                                    },
                                    "name": "step"
                                  },
                                  "operator": "-",
                                  "right": {
                                    "type": "BinaryExpression",
                                    "start": 16231,
                                    "end": 16247,
                                    "loc": {
                                      "start": {
                                        "line": 386,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 386,
                                        "column": 54
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 16231,
                                      "end": 16243,
                                      "loc": {
                                        "start": {
                                          "line": 386,
                                          "column": 38
                                        },
                                        "end": {
                                          "line": 386,
                                          "column": 50
                                        }
                                      },
                                      "name": "letterOffset"
                                    },
                                    "operator": "*",
                                    "right": {
                                      "type": "Literal",
                                      "start": 16246,
                                      "end": 16247,
                                      "loc": {
                                        "start": {
                                          "line": 386,
                                          "column": 53
                                        },
                                        "end": {
                                          "line": 386,
                                          "column": 54
                                        }
                                      },
                                      "value": 2,
                                      "rawValue": 2,
                                      "raw": "2"
                                    }
                                  }
                                }
                              },
                              {
                                "type": "VariableDeclarator",
                                "start": 16265,
                                "end": 16297,
                                "loc": {
                                  "start": {
                                    "line": 387,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 387,
                                    "column": 48
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 16265,
                                  "end": 16276,
                                  "loc": {
                                    "start": {
                                      "line": 387,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 387,
                                      "column": 27
                                    }
                                  },
                                  "name": "letterWidth"
                                },
                                "init": {
                                  "type": "BinaryExpression",
                                  "start": 16279,
                                  "end": 16297,
                                  "loc": {
                                    "start": {
                                      "line": 387,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 387,
                                      "column": 48
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 16279,
                                    "end": 16291,
                                    "loc": {
                                      "start": {
                                        "line": 387,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 387,
                                        "column": 42
                                      }
                                    },
                                    "name": "letterHeight"
                                  },
                                  "operator": "*",
                                  "right": {
                                    "type": "Literal",
                                    "start": 16294,
                                    "end": 16297,
                                    "loc": {
                                      "start": {
                                        "line": 387,
                                        "column": 45
                                      },
                                      "end": {
                                        "line": 387,
                                        "column": 48
                                      }
                                    },
                                    "value": 0.6,
                                    "rawValue": 0.6,
                                    "raw": "0.6"
                                  }
                                }
                              }
                            ],
                            "kind": "var",
                            "leadingComments": [
                              {
                                "type": "CommentLine",
                                "value": " symbols \"x\", \"y\"",
                                "start": 16129,
                                "end": 16148,
                                "loc": {
                                  "start": {
                                    "line": 384,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 384,
                                    "column": 31
                                  }
                                },
                                "range": [
                                  16129,
                                  16148
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16311,
                            "end": 16363,
                            "loc": {
                              "start": {
                                "line": 388,
                                "column": 12
                              },
                              "end": {
                                "line": 388,
                                "column": 64
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16311,
                              "end": 16362,
                              "loc": {
                                "start": {
                                  "line": 388,
                                  "column": 12
                                },
                                "end": {
                                  "line": 388,
                                  "column": 63
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16311,
                                "end": 16320,
                                "loc": {
                                  "start": {
                                    "line": 388,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 388,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 16321,
                                  "end": 16344,
                                  "loc": {
                                    "start": {
                                      "line": 388,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 388,
                                      "column": 45
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 16321,
                                    "end": 16329,
                                    "loc": {
                                      "start": {
                                        "line": 388,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 388,
                                        "column": 30
                                      }
                                    },
                                    "name": "axisSize"
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 16332,
                                    "end": 16344,
                                    "loc": {
                                      "start": {
                                        "line": 388,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 388,
                                        "column": 45
                                      }
                                    },
                                    "name": "letterOffset"
                                  }
                                },
                                {
                                  "type": "Identifier",
                                  "start": 16346,
                                  "end": 16358,
                                  "loc": {
                                    "start": {
                                      "line": 388,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 388,
                                      "column": 59
                                    }
                                  },
                                  "name": "letterOffset"
                                },
                                {
                                  "type": "Literal",
                                  "start": 16360,
                                  "end": 16361,
                                  "loc": {
                                    "start": {
                                      "line": 388,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 388,
                                      "column": 62
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16376,
                            "end": 16457,
                            "loc": {
                              "start": {
                                "line": 389,
                                "column": 12
                              },
                              "end": {
                                "line": 389,
                                "column": 93
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16376,
                              "end": 16456,
                              "loc": {
                                "start": {
                                  "line": 389,
                                  "column": 12
                                },
                                "end": {
                                  "line": 389,
                                  "column": 92
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16376,
                                "end": 16385,
                                "loc": {
                                  "start": {
                                    "line": 389,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 389,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 16386,
                                  "end": 16423,
                                  "loc": {
                                    "start": {
                                      "line": 389,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 389,
                                      "column": 59
                                    }
                                  },
                                  "left": {
                                    "type": "BinaryExpression",
                                    "start": 16386,
                                    "end": 16409,
                                    "loc": {
                                      "start": {
                                        "line": 389,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 389,
                                        "column": 45
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 16386,
                                      "end": 16394,
                                      "loc": {
                                        "start": {
                                          "line": 389,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 389,
                                          "column": 30
                                        }
                                      },
                                      "name": "axisSize"
                                    },
                                    "operator": "+",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 16397,
                                      "end": 16409,
                                      "loc": {
                                        "start": {
                                          "line": 389,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 389,
                                          "column": 45
                                        }
                                      },
                                      "name": "letterOffset"
                                    }
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 16412,
                                    "end": 16423,
                                    "loc": {
                                      "start": {
                                        "line": 389,
                                        "column": 48
                                      },
                                      "end": {
                                        "line": 389,
                                        "column": 59
                                      }
                                    },
                                    "name": "letterWidth"
                                  }
                                },
                                {
                                  "type": "BinaryExpression",
                                  "start": 16425,
                                  "end": 16452,
                                  "loc": {
                                    "start": {
                                      "line": 389,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 389,
                                      "column": 88
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 16425,
                                    "end": 16437,
                                    "loc": {
                                      "start": {
                                        "line": 389,
                                        "column": 61
                                      },
                                      "end": {
                                        "line": 389,
                                        "column": 73
                                      }
                                    },
                                    "name": "letterOffset"
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 16440,
                                    "end": 16452,
                                    "loc": {
                                      "start": {
                                        "line": 389,
                                        "column": 76
                                      },
                                      "end": {
                                        "line": 389,
                                        "column": 88
                                      }
                                    },
                                    "name": "letterHeight"
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 16454,
                                  "end": 16455,
                                  "loc": {
                                    "start": {
                                      "line": 389,
                                      "column": 90
                                    },
                                    "end": {
                                      "line": 389,
                                      "column": 91
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16470,
                            "end": 16537,
                            "loc": {
                              "start": {
                                "line": 390,
                                "column": 12
                              },
                              "end": {
                                "line": 390,
                                "column": 79
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16470,
                              "end": 16536,
                              "loc": {
                                "start": {
                                  "line": 390,
                                  "column": 12
                                },
                                "end": {
                                  "line": 390,
                                  "column": 78
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16470,
                                "end": 16479,
                                "loc": {
                                  "start": {
                                    "line": 390,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 390,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 16480,
                                  "end": 16503,
                                  "loc": {
                                    "start": {
                                      "line": 390,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 390,
                                      "column": 45
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 16480,
                                    "end": 16488,
                                    "loc": {
                                      "start": {
                                        "line": 390,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 390,
                                        "column": 30
                                      }
                                    },
                                    "name": "axisSize"
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 16491,
                                    "end": 16503,
                                    "loc": {
                                      "start": {
                                        "line": 390,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 390,
                                        "column": 45
                                      }
                                    },
                                    "name": "letterOffset"
                                  }
                                },
                                {
                                  "type": "BinaryExpression",
                                  "start": 16505,
                                  "end": 16532,
                                  "loc": {
                                    "start": {
                                      "line": 390,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 390,
                                      "column": 74
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 16505,
                                    "end": 16517,
                                    "loc": {
                                      "start": {
                                        "line": 390,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 390,
                                        "column": 59
                                      }
                                    },
                                    "name": "letterOffset"
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 16520,
                                    "end": 16532,
                                    "loc": {
                                      "start": {
                                        "line": 390,
                                        "column": 62
                                      },
                                      "end": {
                                        "line": 390,
                                        "column": 74
                                      }
                                    },
                                    "name": "letterHeight"
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 16534,
                                  "end": 16535,
                                  "loc": {
                                    "start": {
                                      "line": 390,
                                      "column": 76
                                    },
                                    "end": {
                                      "line": 390,
                                      "column": 77
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16550,
                            "end": 16616,
                            "loc": {
                              "start": {
                                "line": 391,
                                "column": 12
                              },
                              "end": {
                                "line": 391,
                                "column": 78
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16550,
                              "end": 16615,
                              "loc": {
                                "start": {
                                  "line": 391,
                                  "column": 12
                                },
                                "end": {
                                  "line": 391,
                                  "column": 77
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16550,
                                "end": 16559,
                                "loc": {
                                  "start": {
                                    "line": 391,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 391,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 16560,
                                  "end": 16597,
                                  "loc": {
                                    "start": {
                                      "line": 391,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 391,
                                      "column": 59
                                    }
                                  },
                                  "left": {
                                    "type": "BinaryExpression",
                                    "start": 16560,
                                    "end": 16583,
                                    "loc": {
                                      "start": {
                                        "line": 391,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 391,
                                        "column": 45
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 16560,
                                      "end": 16568,
                                      "loc": {
                                        "start": {
                                          "line": 391,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 391,
                                          "column": 30
                                        }
                                      },
                                      "name": "axisSize"
                                    },
                                    "operator": "+",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 16571,
                                      "end": 16583,
                                      "loc": {
                                        "start": {
                                          "line": 391,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 391,
                                          "column": 45
                                        }
                                      },
                                      "name": "letterOffset"
                                    }
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 16586,
                                    "end": 16597,
                                    "loc": {
                                      "start": {
                                        "line": 391,
                                        "column": 48
                                      },
                                      "end": {
                                        "line": 391,
                                        "column": 59
                                      }
                                    },
                                    "name": "letterWidth"
                                  }
                                },
                                {
                                  "type": "Identifier",
                                  "start": 16599,
                                  "end": 16611,
                                  "loc": {
                                    "start": {
                                      "line": 391,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 391,
                                      "column": 73
                                    }
                                  },
                                  "name": "letterOffset"
                                },
                                {
                                  "type": "Literal",
                                  "start": 16613,
                                  "end": 16614,
                                  "loc": {
                                    "start": {
                                      "line": 391,
                                      "column": 75
                                    },
                                    "end": {
                                      "line": 391,
                                      "column": 76
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16629,
                            "end": 16681,
                            "loc": {
                              "start": {
                                "line": 392,
                                "column": 12
                              },
                              "end": {
                                "line": 392,
                                "column": 64
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16629,
                              "end": 16680,
                              "loc": {
                                "start": {
                                  "line": 392,
                                  "column": 12
                                },
                                "end": {
                                  "line": 392,
                                  "column": 63
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16629,
                                "end": 16638,
                                "loc": {
                                  "start": {
                                    "line": 392,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 392,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 16639,
                                  "end": 16651,
                                  "loc": {
                                    "start": {
                                      "line": 392,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 392,
                                      "column": 34
                                    }
                                  },
                                  "name": "letterOffset"
                                },
                                {
                                  "type": "BinaryExpression",
                                  "start": 16653,
                                  "end": 16676,
                                  "loc": {
                                    "start": {
                                      "line": 392,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 392,
                                      "column": 59
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 16653,
                                    "end": 16661,
                                    "loc": {
                                      "start": {
                                        "line": 392,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 392,
                                        "column": 44
                                      }
                                    },
                                    "name": "axisSize"
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 16664,
                                    "end": 16676,
                                    "loc": {
                                      "start": {
                                        "line": 392,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 392,
                                        "column": 59
                                      }
                                    },
                                    "name": "letterOffset"
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 16678,
                                  "end": 16679,
                                  "loc": {
                                    "start": {
                                      "line": 392,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 392,
                                      "column": 62
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16694,
                            "end": 16775,
                            "loc": {
                              "start": {
                                "line": 393,
                                "column": 12
                              },
                              "end": {
                                "line": 393,
                                "column": 93
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16694,
                              "end": 16774,
                              "loc": {
                                "start": {
                                  "line": 393,
                                  "column": 12
                                },
                                "end": {
                                  "line": 393,
                                  "column": 92
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16694,
                                "end": 16703,
                                "loc": {
                                  "start": {
                                    "line": 393,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 393,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 16704,
                                  "end": 16730,
                                  "loc": {
                                    "start": {
                                      "line": 393,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 393,
                                      "column": 48
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 16704,
                                    "end": 16716,
                                    "loc": {
                                      "start": {
                                        "line": 393,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 393,
                                        "column": 34
                                      }
                                    },
                                    "name": "letterOffset"
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 16719,
                                    "end": 16730,
                                    "loc": {
                                      "start": {
                                        "line": 393,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 393,
                                        "column": 48
                                      }
                                    },
                                    "name": "letterWidth"
                                  }
                                },
                                {
                                  "type": "BinaryExpression",
                                  "start": 16732,
                                  "end": 16770,
                                  "loc": {
                                    "start": {
                                      "line": 393,
                                      "column": 50
                                    },
                                    "end": {
                                      "line": 393,
                                      "column": 88
                                    }
                                  },
                                  "left": {
                                    "type": "BinaryExpression",
                                    "start": 16732,
                                    "end": 16755,
                                    "loc": {
                                      "start": {
                                        "line": 393,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 393,
                                        "column": 73
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 16732,
                                      "end": 16740,
                                      "loc": {
                                        "start": {
                                          "line": 393,
                                          "column": 50
                                        },
                                        "end": {
                                          "line": 393,
                                          "column": 58
                                        }
                                      },
                                      "name": "axisSize"
                                    },
                                    "operator": "+",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 16743,
                                      "end": 16755,
                                      "loc": {
                                        "start": {
                                          "line": 393,
                                          "column": 61
                                        },
                                        "end": {
                                          "line": 393,
                                          "column": 73
                                        }
                                      },
                                      "name": "letterOffset"
                                    }
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 16758,
                                    "end": 16770,
                                    "loc": {
                                      "start": {
                                        "line": 393,
                                        "column": 76
                                      },
                                      "end": {
                                        "line": 393,
                                        "column": 88
                                      }
                                    },
                                    "name": "letterHeight"
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 16772,
                                  "end": 16773,
                                  "loc": {
                                    "start": {
                                      "line": 393,
                                      "column": 90
                                    },
                                    "end": {
                                      "line": 393,
                                      "column": 91
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16788,
                            "end": 16855,
                            "loc": {
                              "start": {
                                "line": 394,
                                "column": 12
                              },
                              "end": {
                                "line": 394,
                                "column": 79
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16788,
                              "end": 16854,
                              "loc": {
                                "start": {
                                  "line": 394,
                                  "column": 12
                                },
                                "end": {
                                  "line": 394,
                                  "column": 78
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16788,
                                "end": 16797,
                                "loc": {
                                  "start": {
                                    "line": 394,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 394,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 16798,
                                  "end": 16810,
                                  "loc": {
                                    "start": {
                                      "line": 394,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 394,
                                      "column": 34
                                    }
                                  },
                                  "name": "letterOffset"
                                },
                                {
                                  "type": "BinaryExpression",
                                  "start": 16812,
                                  "end": 16850,
                                  "loc": {
                                    "start": {
                                      "line": 394,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 394,
                                      "column": 74
                                    }
                                  },
                                  "left": {
                                    "type": "BinaryExpression",
                                    "start": 16812,
                                    "end": 16835,
                                    "loc": {
                                      "start": {
                                        "line": 394,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 394,
                                        "column": 59
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 16812,
                                      "end": 16820,
                                      "loc": {
                                        "start": {
                                          "line": 394,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 394,
                                          "column": 44
                                        }
                                      },
                                      "name": "axisSize"
                                    },
                                    "operator": "+",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 16823,
                                      "end": 16835,
                                      "loc": {
                                        "start": {
                                          "line": 394,
                                          "column": 47
                                        },
                                        "end": {
                                          "line": 394,
                                          "column": 59
                                        }
                                      },
                                      "name": "letterOffset"
                                    }
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 16838,
                                    "end": 16850,
                                    "loc": {
                                      "start": {
                                        "line": 394,
                                        "column": 62
                                      },
                                      "end": {
                                        "line": 394,
                                        "column": 74
                                      }
                                    },
                                    "name": "letterHeight"
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 16852,
                                  "end": 16853,
                                  "loc": {
                                    "start": {
                                      "line": 394,
                                      "column": 76
                                    },
                                    "end": {
                                      "line": 394,
                                      "column": 77
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 16868,
                            "end": 16957,
                            "loc": {
                              "start": {
                                "line": 395,
                                "column": 12
                              },
                              "end": {
                                "line": 395,
                                "column": 101
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 16868,
                              "end": 16956,
                              "loc": {
                                "start": {
                                  "line": 395,
                                  "column": 12
                                },
                                "end": {
                                  "line": 395,
                                  "column": 100
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 16868,
                                "end": 16877,
                                "loc": {
                                  "start": {
                                    "line": 395,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 395,
                                    "column": 21
                                  }
                                },
                                "name": "addToAxis"
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 16878,
                                  "end": 16908,
                                  "loc": {
                                    "start": {
                                      "line": 395,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 395,
                                      "column": 52
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 16878,
                                    "end": 16890,
                                    "loc": {
                                      "start": {
                                        "line": 395,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 395,
                                        "column": 34
                                      }
                                    },
                                    "name": "letterOffset"
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "BinaryExpression",
                                    "start": 16893,
                                    "end": 16908,
                                    "loc": {
                                      "start": {
                                        "line": 395,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 395,
                                        "column": 52
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 16893,
                                      "end": 16904,
                                      "loc": {
                                        "start": {
                                          "line": 395,
                                          "column": 37
                                        },
                                        "end": {
                                          "line": 395,
                                          "column": 48
                                        }
                                      },
                                      "name": "letterWidth"
                                    },
                                    "operator": "/",
                                    "right": {
                                      "type": "Literal",
                                      "start": 16907,
                                      "end": 16908,
                                      "loc": {
                                        "start": {
                                          "line": 395,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 395,
                                          "column": 52
                                        }
                                      },
                                      "value": 2,
                                      "rawValue": 2,
                                      "raw": "2"
                                    }
                                  }
                                },
                                {
                                  "type": "BinaryExpression",
                                  "start": 16910,
                                  "end": 16952,
                                  "loc": {
                                    "start": {
                                      "line": 395,
                                      "column": 54
                                    },
                                    "end": {
                                      "line": 395,
                                      "column": 96
                                    }
                                  },
                                  "left": {
                                    "type": "BinaryExpression",
                                    "start": 16910,
                                    "end": 16933,
                                    "loc": {
                                      "start": {
                                        "line": 395,
                                        "column": 54
                                      },
                                      "end": {
                                        "line": 395,
                                        "column": 77
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 16910,
                                      "end": 16918,
                                      "loc": {
                                        "start": {
                                          "line": 395,
                                          "column": 54
                                        },
                                        "end": {
                                          "line": 395,
                                          "column": 62
                                        }
                                      },
                                      "name": "axisSize"
                                    },
                                    "operator": "+",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 16921,
                                      "end": 16933,
                                      "loc": {
                                        "start": {
                                          "line": 395,
                                          "column": 65
                                        },
                                        "end": {
                                          "line": 395,
                                          "column": 77
                                        }
                                      },
                                      "name": "letterOffset"
                                    }
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "BinaryExpression",
                                    "start": 16936,
                                    "end": 16952,
                                    "loc": {
                                      "start": {
                                        "line": 395,
                                        "column": 80
                                      },
                                      "end": {
                                        "line": 395,
                                        "column": 96
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 16936,
                                      "end": 16948,
                                      "loc": {
                                        "start": {
                                          "line": 395,
                                          "column": 80
                                        },
                                        "end": {
                                          "line": 395,
                                          "column": 92
                                        }
                                      },
                                      "name": "letterHeight"
                                    },
                                    "operator": "/",
                                    "right": {
                                      "type": "Literal",
                                      "start": 16951,
                                      "end": 16952,
                                      "loc": {
                                        "start": {
                                          "line": 395,
                                          "column": 95
                                        },
                                        "end": {
                                          "line": 395,
                                          "column": 96
                                        }
                                      },
                                      "value": 2,
                                      "rawValue": 2,
                                      "raw": "2"
                                    }
                                  }
                                },
                                {
                                  "type": "Literal",
                                  "start": 16954,
                                  "end": 16955,
                                  "loc": {
                                    "start": {
                                      "line": 395,
                                      "column": 98
                                    },
                                    "end": {
                                      "line": 395,
                                      "column": 99
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            },
                            "trailingComments": [
                              {
                                "type": "CommentLine",
                                "value": "note: vertex counts must not change after first render",
                                "start": 16971,
                                "end": 17027,
                                "loc": {
                                  "start": {
                                    "line": 397,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 397,
                                    "column": 68
                                  }
                                },
                                "range": [
                                  16971,
                                  17027
                                ]
                              }
                            ]
                          },
                          {
                            "type": "IfStatement",
                            "start": 17040,
                            "end": 17237,
                            "loc": {
                              "start": {
                                "line": 398,
                                "column": 12
                              },
                              "end": {
                                "line": 400,
                                "column": 73
                              }
                            },
                            "test": {
                              "type": "LogicalExpression",
                              "start": 17044,
                              "end": 17162,
                              "loc": {
                                "start": {
                                  "line": 398,
                                  "column": 16
                                },
                                "end": {
                                  "line": 399,
                                  "column": 65
                                }
                              },
                              "left": {
                                "type": "BinaryExpression",
                                "start": 17044,
                                "end": 17093,
                                "loc": {
                                  "start": {
                                    "line": 398,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 398,
                                    "column": 65
                                  }
                                },
                                "left": {
                                  "type": "Identifier",
                                  "start": 17044,
                                  "end": 17053,
                                  "loc": {
                                    "start": {
                                      "line": 398,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 398,
                                      "column": 25
                                    }
                                  },
                                  "name": "gridCount",
                                  "leadingComments": null
                                },
                                "operator": "!=",
                                "right": {
                                  "type": "MemberExpression",
                                  "start": 17057,
                                  "end": 17093,
                                  "loc": {
                                    "start": {
                                      "line": 398,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 398,
                                      "column": 65
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 17057,
                                    "end": 17086,
                                    "loc": {
                                      "start": {
                                        "line": 398,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 398,
                                        "column": 58
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 17057,
                                      "end": 17077,
                                      "loc": {
                                        "start": {
                                          "line": 398,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 398,
                                          "column": 49
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 17057,
                                        "end": 17068,
                                        "loc": {
                                          "start": {
                                            "line": 398,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 398,
                                            "column": 40
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 17057,
                                          "end": 17061,
                                          "loc": {
                                            "start": {
                                              "line": 398,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 398,
                                              "column": 33
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 17062,
                                          "end": 17068,
                                          "loc": {
                                            "start": {
                                              "line": 398,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 398,
                                              "column": 40
                                            }
                                          },
                                          "name": "__grid"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 17069,
                                        "end": 17077,
                                        "loc": {
                                          "start": {
                                            "line": 398,
                                            "column": 41
                                          },
                                          "end": {
                                            "line": 398,
                                            "column": 49
                                          }
                                        },
                                        "name": "geometry"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 17078,
                                      "end": 17086,
                                      "loc": {
                                        "start": {
                                          "line": 398,
                                          "column": 50
                                        },
                                        "end": {
                                          "line": 398,
                                          "column": 58
                                        }
                                      },
                                      "name": "vertices"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 17087,
                                    "end": 17093,
                                    "loc": {
                                      "start": {
                                        "line": 398,
                                        "column": 59
                                      },
                                      "end": {
                                        "line": 398,
                                        "column": 65
                                      }
                                    },
                                    "name": "length"
                                  },
                                  "computed": false
                                },
                                "leadingComments": null
                              },
                              "operator": "||",
                              "right": {
                                "type": "BinaryExpression",
                                "start": 17113,
                                "end": 17162,
                                "loc": {
                                  "start": {
                                    "line": 399,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 399,
                                    "column": 65
                                  }
                                },
                                "left": {
                                  "type": "Identifier",
                                  "start": 17113,
                                  "end": 17122,
                                  "loc": {
                                    "start": {
                                      "line": 399,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 399,
                                      "column": 25
                                    }
                                  },
                                  "name": "axisCount"
                                },
                                "operator": "!=",
                                "right": {
                                  "type": "MemberExpression",
                                  "start": 17126,
                                  "end": 17162,
                                  "loc": {
                                    "start": {
                                      "line": 399,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 399,
                                      "column": 65
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 17126,
                                    "end": 17155,
                                    "loc": {
                                      "start": {
                                        "line": 399,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 399,
                                        "column": 58
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 17126,
                                      "end": 17146,
                                      "loc": {
                                        "start": {
                                          "line": 399,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 399,
                                          "column": 49
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 17126,
                                        "end": 17137,
                                        "loc": {
                                          "start": {
                                            "line": 399,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 399,
                                            "column": 40
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 17126,
                                          "end": 17130,
                                          "loc": {
                                            "start": {
                                              "line": 399,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 399,
                                              "column": 33
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 17131,
                                          "end": 17137,
                                          "loc": {
                                            "start": {
                                              "line": 399,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 399,
                                              "column": 40
                                            }
                                          },
                                          "name": "__axis"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 17138,
                                        "end": 17146,
                                        "loc": {
                                          "start": {
                                            "line": 399,
                                            "column": 41
                                          },
                                          "end": {
                                            "line": 399,
                                            "column": 49
                                          }
                                        },
                                        "name": "geometry"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 17147,
                                      "end": 17155,
                                      "loc": {
                                        "start": {
                                          "line": 399,
                                          "column": 50
                                        },
                                        "end": {
                                          "line": 399,
                                          "column": 58
                                        }
                                      },
                                      "name": "vertices"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 17156,
                                    "end": 17162,
                                    "loc": {
                                      "start": {
                                        "line": 399,
                                        "column": 59
                                      },
                                      "end": {
                                        "line": 399,
                                        "column": 65
                                      }
                                    },
                                    "name": "length"
                                  },
                                  "computed": false
                                }
                              },
                              "leadingComments": null
                            },
                            "consequent": {
                              "type": "ExpressionStatement",
                              "start": 17180,
                              "end": 17237,
                              "loc": {
                                "start": {
                                  "line": 400,
                                  "column": 16
                                },
                                "end": {
                                  "line": 400,
                                  "column": 73
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 17180,
                                "end": 17236,
                                "loc": {
                                  "start": {
                                    "line": 400,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 400,
                                    "column": 72
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 17180,
                                  "end": 17193,
                                  "loc": {
                                    "start": {
                                      "line": 400,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 400,
                                      "column": 29
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 17180,
                                    "end": 17187,
                                    "loc": {
                                      "start": {
                                        "line": 400,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 400,
                                        "column": 23
                                      }
                                    },
                                    "name": "console"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 17188,
                                    "end": 17193,
                                    "loc": {
                                      "start": {
                                        "line": 400,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 400,
                                        "column": 29
                                      }
                                    },
                                    "name": "error"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Literal",
                                    "start": 17194,
                                    "end": 17235,
                                    "loc": {
                                      "start": {
                                        "line": 400,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 400,
                                        "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": 16971,
                                "end": 17027,
                                "loc": {
                                  "start": {
                                    "line": 397,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 397,
                                    "column": 68
                                  }
                                },
                                "range": [
                                  16971,
                                  17027
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 17251,
                            "end": 17298,
                            "loc": {
                              "start": {
                                "line": 402,
                                "column": 12
                              },
                              "end": {
                                "line": 402,
                                "column": 59
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 17251,
                              "end": 17297,
                              "loc": {
                                "start": {
                                  "line": 402,
                                  "column": 12
                                },
                                "end": {
                                  "line": 402,
                                  "column": 58
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 17251,
                                "end": 17290,
                                "loc": {
                                  "start": {
                                    "line": 402,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 402,
                                    "column": 51
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 17251,
                                  "end": 17271,
                                  "loc": {
                                    "start": {
                                      "line": 402,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 402,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 17251,
                                    "end": 17262,
                                    "loc": {
                                      "start": {
                                        "line": 402,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 402,
                                        "column": 23
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 17251,
                                      "end": 17255,
                                      "loc": {
                                        "start": {
                                          "line": 402,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 402,
                                          "column": 16
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 17256,
                                      "end": 17262,
                                      "loc": {
                                        "start": {
                                          "line": 402,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 402,
                                          "column": 23
                                        }
                                      },
                                      "name": "__grid"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 17263,
                                    "end": 17271,
                                    "loc": {
                                      "start": {
                                        "line": 402,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 402,
                                        "column": 32
                                      }
                                    },
                                    "name": "geometry"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 17272,
                                  "end": 17290,
                                  "loc": {
                                    "start": {
                                      "line": 402,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 402,
                                      "column": 51
                                    }
                                  },
                                  "name": "verticesNeedUpdate"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "Literal",
                                "start": 17293,
                                "end": 17297,
                                "loc": {
                                  "start": {
                                    "line": 402,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 402,
                                    "column": 58
                                  }
                                },
                                "value": true,
                                "rawValue": true,
                                "raw": "true"
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 17311,
                            "end": 17358,
                            "loc": {
                              "start": {
                                "line": 403,
                                "column": 12
                              },
                              "end": {
                                "line": 403,
                                "column": 59
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 17311,
                              "end": 17357,
                              "loc": {
                                "start": {
                                  "line": 403,
                                  "column": 12
                                },
                                "end": {
                                  "line": 403,
                                  "column": 58
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 17311,
                                "end": 17350,
                                "loc": {
                                  "start": {
                                    "line": 403,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 403,
                                    "column": 51
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 17311,
                                  "end": 17331,
                                  "loc": {
                                    "start": {
                                      "line": 403,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 403,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 17311,
                                    "end": 17322,
                                    "loc": {
                                      "start": {
                                        "line": 403,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 403,
                                        "column": 23
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 17311,
                                      "end": 17315,
                                      "loc": {
                                        "start": {
                                          "line": 403,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 403,
                                          "column": 16
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 17316,
                                      "end": 17322,
                                      "loc": {
                                        "start": {
                                          "line": 403,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 403,
                                          "column": 23
                                        }
                                      },
                                      "name": "__axis"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 17323,
                                    "end": 17331,
                                    "loc": {
                                      "start": {
                                        "line": 403,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 403,
                                        "column": 32
                                      }
                                    },
                                    "name": "geometry"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 17332,
                                  "end": 17350,
                                  "loc": {
                                    "start": {
                                      "line": 403,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 403,
                                      "column": 51
                                    }
                                  },
                                  "name": "verticesNeedUpdate"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "Literal",
                                "start": 17353,
                                "end": 17357,
                                "loc": {
                                  "start": {
                                    "line": 403,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 403,
                                    "column": 58
                                  }
                                },
                                "value": true,
                                "rawValue": true,
                                "raw": "true"
                              }
                            }
                          }
                        ]
                      },
                      "alternate": null
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 17380,
              "end": 17542,
              "loc": {
                "start": {
                  "line": 407,
                  "column": 4
                },
                "end": {
                  "line": 410,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 17380,
                "end": 17392,
                "loc": {
                  "start": {
                    "line": 407,
                    "column": 4
                  },
                  "end": {
                    "line": 407,
                    "column": 16
                  }
                },
                "name": "calcGridStep"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 17392,
                "end": 17542,
                "loc": {
                  "start": {
                    "line": 407,
                    "column": 16
                  },
                  "end": {
                    "line": 410,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 17393,
                    "end": 17402,
                    "loc": {
                      "start": {
                        "line": 407,
                        "column": 17
                      },
                      "end": {
                        "line": 407,
                        "column": 26
                      }
                    },
                    "name": "modelSize"
                  },
                  {
                    "type": "Identifier",
                    "start": 17404,
                    "end": 17411,
                    "loc": {
                      "start": {
                        "line": 407,
                        "column": 28
                      },
                      "end": {
                        "line": 407,
                        "column": 35
                      }
                    },
                    "name": "oldstep"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 17413,
                  "end": 17542,
                  "loc": {
                    "start": {
                      "line": 407,
                      "column": 37
                    },
                    "end": {
                      "line": 410,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 17423,
                      "end": 17500,
                      "loc": {
                        "start": {
                          "line": 408,
                          "column": 8
                        },
                        "end": {
                          "line": 408,
                          "column": 85
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 17427,
                          "end": 17499,
                          "loc": {
                            "start": {
                              "line": 408,
                              "column": 12
                            },
                            "end": {
                              "line": 408,
                              "column": 84
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 17427,
                            "end": 17432,
                            "loc": {
                              "start": {
                                "line": 408,
                                "column": 12
                              },
                              "end": {
                                "line": 408,
                                "column": 17
                              }
                            },
                            "name": "power"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 17435,
                            "end": 17499,
                            "loc": {
                              "start": {
                                "line": 408,
                                "column": 20
                              },
                              "end": {
                                "line": 408,
                                "column": 84
                              }
                            },
                            "left": {
                              "type": "CallExpression",
                              "start": 17435,
                              "end": 17495,
                              "loc": {
                                "start": {
                                  "line": 408,
                                  "column": 20
                                },
                                "end": {
                                  "line": 408,
                                  "column": 80
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 17435,
                                "end": 17445,
                                "loc": {
                                  "start": {
                                    "line": 408,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 408,
                                    "column": 30
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 17435,
                                  "end": 17439,
                                  "loc": {
                                    "start": {
                                      "line": 408,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 408,
                                      "column": 24
                                    }
                                  },
                                  "name": "Math"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 17440,
                                  "end": 17445,
                                  "loc": {
                                    "start": {
                                      "line": 408,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 408,
                                      "column": 30
                                    }
                                  },
                                  "name": "floor"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "CallExpression",
                                  "start": 17446,
                                  "end": 17494,
                                  "loc": {
                                    "start": {
                                      "line": 408,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 408,
                                      "column": 79
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 17446,
                                    "end": 17456,
                                    "loc": {
                                      "start": {
                                        "line": 408,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 408,
                                        "column": 41
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 17446,
                                      "end": 17450,
                                      "loc": {
                                        "start": {
                                          "line": 408,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 408,
                                          "column": 35
                                        }
                                      },
                                      "name": "Math"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 17451,
                                      "end": 17456,
                                      "loc": {
                                        "start": {
                                          "line": 408,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 408,
                                          "column": 41
                                        }
                                      },
                                      "name": "log10"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "CallExpression",
                                      "start": 17457,
                                      "end": 17493,
                                      "loc": {
                                        "start": {
                                          "line": 408,
                                          "column": 42
                                        },
                                        "end": {
                                          "line": 408,
                                          "column": 78
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 17457,
                                        "end": 17465,
                                        "loc": {
                                          "start": {
                                            "line": 408,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 408,
                                            "column": 50
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 17457,
                                          "end": 17461,
                                          "loc": {
                                            "start": {
                                              "line": 408,
                                              "column": 42
                                            },
                                            "end": {
                                              "line": 408,
                                              "column": 46
                                            }
                                          },
                                          "name": "Math"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 17462,
                                          "end": 17465,
                                          "loc": {
                                            "start": {
                                              "line": 408,
                                              "column": 47
                                            },
                                            "end": {
                                              "line": 408,
                                              "column": 50
                                            }
                                          },
                                          "name": "abs"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "BinaryExpression",
                                          "start": 17466,
                                          "end": 17492,
                                          "loc": {
                                            "start": {
                                              "line": 408,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 408,
                                              "column": 77
                                            }
                                          },
                                          "left": {
                                            "type": "Identifier",
                                            "start": 17466,
                                            "end": 17475,
                                            "loc": {
                                              "start": {
                                                "line": 408,
                                                "column": 51
                                              },
                                              "end": {
                                                "line": 408,
                                                "column": 60
                                              }
                                            },
                                            "name": "modelSize"
                                          },
                                          "operator": "*",
                                          "right": {
                                            "type": "MemberExpression",
                                            "start": 17478,
                                            "end": 17492,
                                            "loc": {
                                              "start": {
                                                "line": 408,
                                                "column": 63
                                              },
                                              "end": {
                                                "line": 408,
                                                "column": 77
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 17478,
                                              "end": 17482,
                                              "loc": {
                                                "start": {
                                                  "line": 408,
                                                  "column": 63
                                                },
                                                "end": {
                                                  "line": 408,
                                                  "column": 67
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 17483,
                                              "end": 17492,
                                              "loc": {
                                                "start": {
                                                  "line": 408,
                                                  "column": 68
                                                },
                                                "end": {
                                                  "line": 408,
                                                  "column": 77
                                                }
                                              },
                                              "name": "gridScale"
                                            },
                                            "computed": false
                                          }
                                        }
                                      ]
                                    }
                                  ]
                                }
                              ]
                            },
                            "operator": "-",
                            "right": {
                              "type": "Literal",
                              "start": 17498,
                              "end": 17499,
                              "loc": {
                                "start": {
                                  "line": 408,
                                  "column": 83
                                },
                                "end": {
                                  "line": 408,
                                  "column": 84
                                }
                              },
                              "value": 1,
                              "rawValue": 1,
                              "raw": "1"
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 17509,
                      "end": 17536,
                      "loc": {
                        "start": {
                          "line": 409,
                          "column": 8
                        },
                        "end": {
                          "line": 409,
                          "column": 35
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 17516,
                        "end": 17535,
                        "loc": {
                          "start": {
                            "line": 409,
                            "column": 15
                          },
                          "end": {
                            "line": 409,
                            "column": 34
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 17516,
                          "end": 17524,
                          "loc": {
                            "start": {
                              "line": 409,
                              "column": 15
                            },
                            "end": {
                              "line": 409,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 17516,
                            "end": 17520,
                            "loc": {
                              "start": {
                                "line": 409,
                                "column": 15
                              },
                              "end": {
                                "line": 409,
                                "column": 19
                              }
                            },
                            "name": "Math"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 17521,
                            "end": 17524,
                            "loc": {
                              "start": {
                                "line": 409,
                                "column": 20
                              },
                              "end": {
                                "line": 409,
                                "column": 23
                              }
                            },
                            "name": "pow"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 17525,
                            "end": 17527,
                            "loc": {
                              "start": {
                                "line": 409,
                                "column": 24
                              },
                              "end": {
                                "line": 409,
                                "column": 26
                              }
                            },
                            "value": 10,
                            "rawValue": 10,
                            "raw": "10"
                          },
                          {
                            "type": "Identifier",
                            "start": 17529,
                            "end": 17534,
                            "loc": {
                              "start": {
                                "line": 409,
                                "column": 28
                              },
                              "end": {
                                "line": 409,
                                "column": 33
                              }
                            },
                            "name": "power"
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 17548,
              "end": 17774,
              "loc": {
                "start": {
                  "line": 412,
                  "column": 4
                },
                "end": {
                  "line": 417,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 17548,
                "end": 17560,
                "loc": {
                  "start": {
                    "line": 412,
                    "column": 4
                  },
                  "end": {
                    "line": 412,
                    "column": 16
                  }
                },
                "name": "calcAxisSize"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 17560,
                "end": 17774,
                "loc": {
                  "start": {
                    "line": 412,
                    "column": 16
                  },
                  "end": {
                    "line": 417,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 17561,
                    "end": 17565,
                    "loc": {
                      "start": {
                        "line": 412,
                        "column": 17
                      },
                      "end": {
                        "line": 412,
                        "column": 21
                      }
                    },
                    "name": "size"
                  },
                  {
                    "type": "Identifier",
                    "start": 17567,
                    "end": 17571,
                    "loc": {
                      "start": {
                        "line": 412,
                        "column": 23
                      },
                      "end": {
                        "line": 412,
                        "column": 27
                      }
                    },
                    "name": "step"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 17573,
                  "end": 17774,
                  "loc": {
                    "start": {
                      "line": 412,
                      "column": 29
                    },
                    "end": {
                      "line": 417,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 17583,
                      "end": 17620,
                      "loc": {
                        "start": {
                          "line": 413,
                          "column": 8
                        },
                        "end": {
                          "line": 413,
                          "column": 45
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 17587,
                        "end": 17597,
                        "loc": {
                          "start": {
                            "line": 413,
                            "column": 12
                          },
                          "end": {
                            "line": 413,
                            "column": 22
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 17587,
                          "end": 17591,
                          "loc": {
                            "start": {
                              "line": 413,
                              "column": 12
                            },
                            "end": {
                              "line": 413,
                              "column": 16
                            }
                          },
                          "name": "size"
                        },
                        "operator": "<=",
                        "right": {
                          "type": "Literal",
                          "start": 17595,
                          "end": 17597,
                          "loc": {
                            "start": {
                              "line": 413,
                              "column": 20
                            },
                            "end": {
                              "line": 413,
                              "column": 22
                            }
                          },
                          "value": 10,
                          "rawValue": 10,
                          "raw": "10"
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 17599,
                        "end": 17620,
                        "loc": {
                          "start": {
                            "line": 413,
                            "column": 24
                          },
                          "end": {
                            "line": 413,
                            "column": 45
                          }
                        },
                        "argument": {
                          "type": "MemberExpression",
                          "start": 17606,
                          "end": 17619,
                          "loc": {
                            "start": {
                              "line": 413,
                              "column": 31
                            },
                            "end": {
                              "line": 413,
                              "column": 44
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 17606,
                            "end": 17610,
                            "loc": {
                              "start": {
                                "line": 413,
                                "column": 31
                              },
                              "end": {
                                "line": 413,
                                "column": 35
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 17611,
                            "end": 17619,
                            "loc": {
                              "start": {
                                "line": 413,
                                "column": 36
                              },
                              "end": {
                                "line": 413,
                                "column": 44
                              }
                            },
                            "name": "axisSize"
                          },
                          "computed": false
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 17629,
                      "end": 17684,
                      "loc": {
                        "start": {
                          "line": 414,
                          "column": 8
                        },
                        "end": {
                          "line": 414,
                          "column": 63
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 17633,
                          "end": 17683,
                          "loc": {
                            "start": {
                              "line": 414,
                              "column": 12
                            },
                            "end": {
                              "line": 414,
                              "column": 62
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 17633,
                            "end": 17645,
                            "loc": {
                              "start": {
                                "line": 414,
                                "column": 12
                              },
                              "end": {
                                "line": 414,
                                "column": 24
                              }
                            },
                            "name": "axisCellSize"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 17649,
                            "end": 17683,
                            "loc": {
                              "start": {
                                "line": 414,
                                "column": 28
                              },
                              "end": {
                                "line": 414,
                                "column": 62
                              }
                            },
                            "left": {
                              "type": "Literal",
                              "start": 17649,
                              "end": 17650,
                              "loc": {
                                "start": {
                                  "line": 414,
                                  "column": 28
                                },
                                "end": {
                                  "line": 414,
                                  "column": 29
                                }
                              },
                              "value": 5,
                              "rawValue": 5,
                              "raw": "5"
                            },
                            "operator": "*",
                            "right": {
                              "type": "CallExpression",
                              "start": 17653,
                              "end": 17683,
                              "loc": {
                                "start": {
                                  "line": 414,
                                  "column": 32
                                },
                                "end": {
                                  "line": 414,
                                  "column": 62
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 17653,
                                "end": 17663,
                                "loc": {
                                  "start": {
                                    "line": 414,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 414,
                                    "column": 42
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 17653,
                                  "end": 17657,
                                  "loc": {
                                    "start": {
                                      "line": 414,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 414,
                                      "column": 36
                                    }
                                  },
                                  "name": "Math"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 17658,
                                  "end": 17663,
                                  "loc": {
                                    "start": {
                                      "line": 414,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 414,
                                      "column": 42
                                    }
                                  },
                                  "name": "floor"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 17664,
                                  "end": 17682,
                                  "loc": {
                                    "start": {
                                      "line": 414,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 414,
                                      "column": 61
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 17664,
                                    "end": 17668,
                                    "loc": {
                                      "start": {
                                        "line": 414,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 414,
                                        "column": 47
                                      }
                                    },
                                    "name": "size"
                                  },
                                  "operator": "/",
                                  "right": {
                                    "type": "BinaryExpression",
                                    "start": 17672,
                                    "end": 17681,
                                    "loc": {
                                      "start": {
                                        "line": 414,
                                        "column": 51
                                      },
                                      "end": {
                                        "line": 414,
                                        "column": 60
                                      }
                                    },
                                    "left": {
                                      "type": "Literal",
                                      "start": 17672,
                                      "end": 17674,
                                      "loc": {
                                        "start": {
                                          "line": 414,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 414,
                                          "column": 53
                                        }
                                      },
                                      "value": 20,
                                      "rawValue": 20,
                                      "raw": "20"
                                    },
                                    "operator": "*",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 17677,
                                      "end": 17681,
                                      "loc": {
                                        "start": {
                                          "line": 414,
                                          "column": 56
                                        },
                                        "end": {
                                          "line": 414,
                                          "column": 60
                                        }
                                      },
                                      "name": "step"
                                    },
                                    "parenthesizedExpression": true
                                  }
                                }
                              ]
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 17693,
                      "end": 17732,
                      "loc": {
                        "start": {
                          "line": 415,
                          "column": 8
                        },
                        "end": {
                          "line": 415,
                          "column": 47
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 17697,
                        "end": 17713,
                        "loc": {
                          "start": {
                            "line": 415,
                            "column": 12
                          },
                          "end": {
                            "line": 415,
                            "column": 28
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 17697,
                          "end": 17709,
                          "loc": {
                            "start": {
                              "line": 415,
                              "column": 12
                            },
                            "end": {
                              "line": 415,
                              "column": 24
                            }
                          },
                          "name": "axisCellSize"
                        },
                        "operator": "<",
                        "right": {
                          "type": "Literal",
                          "start": 17712,
                          "end": 17713,
                          "loc": {
                            "start": {
                              "line": 415,
                              "column": 27
                            },
                            "end": {
                              "line": 415,
                              "column": 28
                            }
                          },
                          "value": 5,
                          "rawValue": 5,
                          "raw": "5"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 17715,
                        "end": 17732,
                        "loc": {
                          "start": {
                            "line": 415,
                            "column": 30
                          },
                          "end": {
                            "line": 415,
                            "column": 47
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 17715,
                          "end": 17731,
                          "loc": {
                            "start": {
                              "line": 415,
                              "column": 30
                            },
                            "end": {
                              "line": 415,
                              "column": 46
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "Identifier",
                            "start": 17715,
                            "end": 17727,
                            "loc": {
                              "start": {
                                "line": 415,
                                "column": 30
                              },
                              "end": {
                                "line": 415,
                                "column": 42
                              }
                            },
                            "name": "axisCellSize"
                          },
                          "right": {
                            "type": "Literal",
                            "start": 17730,
                            "end": 17731,
                            "loc": {
                              "start": {
                                "line": 415,
                                "column": 45
                              },
                              "end": {
                                "line": 415,
                                "column": 46
                              }
                            },
                            "value": 5,
                            "rawValue": 5,
                            "raw": "5"
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 17741,
                      "end": 17768,
                      "loc": {
                        "start": {
                          "line": 416,
                          "column": 8
                        },
                        "end": {
                          "line": 416,
                          "column": 35
                        }
                      },
                      "argument": {
                        "type": "BinaryExpression",
                        "start": 17748,
                        "end": 17767,
                        "loc": {
                          "start": {
                            "line": 416,
                            "column": 15
                          },
                          "end": {
                            "line": 416,
                            "column": 34
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 17748,
                          "end": 17760,
                          "loc": {
                            "start": {
                              "line": 416,
                              "column": 15
                            },
                            "end": {
                              "line": 416,
                              "column": 27
                            }
                          },
                          "name": "axisCellSize"
                        },
                        "operator": "*",
                        "right": {
                          "type": "Identifier",
                          "start": 17763,
                          "end": 17767,
                          "loc": {
                            "start": {
                              "line": 416,
                              "column": 30
                            },
                            "end": {
                              "line": 416,
                              "column": 34
                            }
                          },
                          "name": "step"
                        }
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 17780,
              "end": 18841,
              "loc": {
                "start": {
                  "line": 419,
                  "column": 4
                },
                "end": {
                  "line": 447,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 17780,
                "end": 17799,
                "loc": {
                  "start": {
                    "line": 419,
                    "column": 4
                  },
                  "end": {
                    "line": 419,
                    "column": 23
                  }
                },
                "name": "getClosestGeomPoint"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 17799,
                "end": 18841,
                "loc": {
                  "start": {
                    "line": 419,
                    "column": 23
                  },
                  "end": {
                    "line": 447,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 17800,
                    "end": 17808,
                    "loc": {
                      "start": {
                        "line": 419,
                        "column": 24
                      },
                      "end": {
                        "line": 419,
                        "column": 32
                      }
                    },
                    "name": "newPoint"
                  },
                  {
                    "type": "Identifier",
                    "start": 17810,
                    "end": 17821,
                    "loc": {
                      "start": {
                        "line": 419,
                        "column": 34
                      },
                      "end": {
                        "line": 419,
                        "column": 45
                      }
                    },
                    "name": "maxDistance"
                  },
                  {
                    "type": "Identifier",
                    "start": 17823,
                    "end": 17835,
                    "loc": {
                      "start": {
                        "line": 419,
                        "column": 47
                      },
                      "end": {
                        "line": 419,
                        "column": 59
                      }
                    },
                    "name": "ignoreFilter"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 17837,
                  "end": 18841,
                  "loc": {
                    "start": {
                      "line": 419,
                      "column": 61
                    },
                    "end": {
                      "line": 447,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 17847,
                      "end": 17925,
                      "loc": {
                        "start": {
                          "line": 420,
                          "column": 8
                        },
                        "end": {
                          "line": 421,
                          "column": 59
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 17851,
                        "end": 17864,
                        "loc": {
                          "start": {
                            "line": 420,
                            "column": 12
                          },
                          "end": {
                            "line": 420,
                            "column": 25
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "Identifier",
                          "start": 17852,
                          "end": 17864,
                          "loc": {
                            "start": {
                              "line": 420,
                              "column": 13
                            },
                            "end": {
                              "line": 420,
                              "column": 25
                            }
                          },
                          "name": "ignoreFilter"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 17878,
                        "end": 17925,
                        "loc": {
                          "start": {
                            "line": 421,
                            "column": 12
                          },
                          "end": {
                            "line": 421,
                            "column": 59
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 17878,
                          "end": 17924,
                          "loc": {
                            "start": {
                              "line": 421,
                              "column": 12
                            },
                            "end": {
                              "line": 421,
                              "column": 58
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "Identifier",
                            "start": 17878,
                            "end": 17890,
                            "loc": {
                              "start": {
                                "line": 421,
                                "column": 12
                              },
                              "end": {
                                "line": 421,
                                "column": 24
                              }
                            },
                            "name": "ignoreFilter"
                          },
                          "right": {
                            "type": "FunctionExpression",
                            "start": 17893,
                            "end": 17924,
                            "loc": {
                              "start": {
                                "line": 421,
                                "column": 27
                              },
                              "end": {
                                "line": 421,
                                "column": 58
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 17902,
                                "end": 17905,
                                "loc": {
                                  "start": {
                                    "line": 421,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 421,
                                    "column": 39
                                  }
                                },
                                "name": "obj"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 17907,
                              "end": 17924,
                              "loc": {
                                "start": {
                                  "line": 421,
                                  "column": 41
                                },
                                "end": {
                                  "line": 421,
                                  "column": 58
                                }
                              },
                              "body": [
                                {
                                  "type": "ReturnStatement",
                                  "start": 17909,
                                  "end": 17922,
                                  "loc": {
                                    "start": {
                                      "line": 421,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 421,
                                      "column": 56
                                    }
                                  },
                                  "argument": {
                                    "type": "Literal",
                                    "start": 17916,
                                    "end": 17921,
                                    "loc": {
                                      "start": {
                                        "line": 421,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 421,
                                        "column": 55
                                      }
                                    },
                                    "value": false,
                                    "rawValue": false,
                                    "raw": "false"
                                  }
                                }
                              ]
                            }
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 17935,
                      "end": 17962,
                      "loc": {
                        "start": {
                          "line": 423,
                          "column": 8
                        },
                        "end": {
                          "line": 423,
                          "column": 35
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 17939,
                          "end": 17961,
                          "loc": {
                            "start": {
                              "line": 423,
                              "column": 12
                            },
                            "end": {
                              "line": 423,
                              "column": 34
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 17939,
                            "end": 17947,
                            "loc": {
                              "start": {
                                "line": 423,
                                "column": 12
                              },
                              "end": {
                                "line": 423,
                                "column": 20
                              }
                            },
                            "name": "distance"
                          },
                          "init": {
                            "type": "Identifier",
                            "start": 17950,
                            "end": 17961,
                            "loc": {
                              "start": {
                                "line": 423,
                                "column": 23
                              },
                              "end": {
                                "line": 423,
                                "column": 34
                              }
                            },
                            "name": "maxDistance"
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 17971,
                      "end": 18007,
                      "loc": {
                        "start": {
                          "line": 424,
                          "column": 8
                        },
                        "end": {
                          "line": 424,
                          "column": 44
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 17975,
                          "end": 18006,
                          "loc": {
                            "start": {
                              "line": 424,
                              "column": 12
                            },
                            "end": {
                              "line": 424,
                              "column": 43
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 17975,
                            "end": 17987,
                            "loc": {
                              "start": {
                                "line": 424,
                                "column": 12
                              },
                              "end": {
                                "line": 424,
                                "column": 24
                              }
                            },
                            "name": "closestPoint"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 17990,
                            "end": 18006,
                            "loc": {
                              "start": {
                                "line": 424,
                                "column": 27
                              },
                              "end": {
                                "line": 424,
                                "column": 43
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 17990,
                              "end": 18004,
                              "loc": {
                                "start": {
                                  "line": 424,
                                  "column": 27
                                },
                                "end": {
                                  "line": 424,
                                  "column": 41
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 17990,
                                "end": 17998,
                                "loc": {
                                  "start": {
                                    "line": 424,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 424,
                                    "column": 35
                                  }
                                },
                                "name": "newPoint"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 17999,
                                "end": 18004,
                                "loc": {
                                  "start": {
                                    "line": 424,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 424,
                                    "column": 41
                                  }
                                },
                                "name": "clone"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 18016,
                      "end": 18038,
                      "loc": {
                        "start": {
                          "line": 425,
                          "column": 8
                        },
                        "end": {
                          "line": 425,
                          "column": 30
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 18020,
                          "end": 18037,
                          "loc": {
                            "start": {
                              "line": 425,
                              "column": 12
                            },
                            "end": {
                              "line": 425,
                              "column": 29
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 18020,
                            "end": 18029,
                            "loc": {
                              "start": {
                                "line": 425,
                                "column": 12
                              },
                              "end": {
                                "line": 425,
                                "column": 21
                              }
                            },
                            "name": "isSnapped"
                          },
                          "init": {
                            "type": "Literal",
                            "start": 18032,
                            "end": 18037,
                            "loc": {
                              "start": {
                                "line": 425,
                                "column": 24
                              },
                              "end": {
                                "line": 425,
                                "column": 29
                              }
                            },
                            "value": false,
                            "rawValue": false,
                            "raw": "false"
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 18047,
                      "end": 18667,
                      "loc": {
                        "start": {
                          "line": 426,
                          "column": 8
                        },
                        "end": {
                          "line": 440,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 18047,
                        "end": 18666,
                        "loc": {
                          "start": {
                            "line": 426,
                            "column": 8
                          },
                          "end": {
                            "line": 440,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 18047,
                          "end": 18080,
                          "loc": {
                            "start": {
                              "line": 426,
                              "column": 8
                            },
                            "end": {
                              "line": 426,
                              "column": 41
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 18047,
                            "end": 18072,
                            "loc": {
                              "start": {
                                "line": 426,
                                "column": 8
                              },
                              "end": {
                                "line": 426,
                                "column": 33
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 18047,
                              "end": 18070,
                              "loc": {
                                "start": {
                                  "line": 426,
                                  "column": 8
                                },
                                "end": {
                                  "line": 426,
                                  "column": 31
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 18047,
                                "end": 18051,
                                "loc": {
                                  "start": {
                                    "line": 426,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 426,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 18052,
                                "end": 18070,
                                "loc": {
                                  "start": {
                                    "line": 426,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 426,
                                    "column": 31
                                  }
                                },
                                "name": "getObjectsOnSketch"
                              },
                              "computed": false
                            },
                            "arguments": []
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 18073,
                            "end": 18080,
                            "loc": {
                              "start": {
                                "line": 426,
                                "column": 34
                              },
                              "end": {
                                "line": 426,
                                "column": 41
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 18081,
                            "end": 18665,
                            "loc": {
                              "start": {
                                "line": 426,
                                "column": 42
                              },
                              "end": {
                                "line": 440,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 18081,
                                "end": 18084,
                                "loc": {
                                  "start": {
                                    "line": 426,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 426,
                                    "column": 45
                                  }
                                },
                                "name": "obj"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 18089,
                              "end": 18665,
                              "loc": {
                                "start": {
                                  "line": 426,
                                  "column": 50
                                },
                                "end": {
                                  "line": 440,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 18103,
                                  "end": 18655,
                                  "loc": {
                                    "start": {
                                      "line": 427,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 439,
                                      "column": 15
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 18103,
                                    "end": 18654,
                                    "loc": {
                                      "start": {
                                        "line": 427,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 439,
                                        "column": 14
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 18103,
                                      "end": 18132,
                                      "loc": {
                                        "start": {
                                          "line": 427,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 427,
                                          "column": 41
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 18103,
                                        "end": 18109,
                                        "loc": {
                                          "start": {
                                            "line": 427,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 427,
                                            "column": 18
                                          }
                                        },
                                        "name": "Sketch"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 18110,
                                        "end": 18132,
                                        "loc": {
                                          "start": {
                                            "line": 427,
                                            "column": 19
                                          },
                                          "end": {
                                            "line": 427,
                                            "column": 41
                                          }
                                        },
                                        "name": "ForObjectsWithChildren"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 18133,
                                        "end": 18136,
                                        "loc": {
                                          "start": {
                                            "line": 427,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 427,
                                            "column": 45
                                          }
                                        },
                                        "name": "obj"
                                      },
                                      {
                                        "type": "FunctionExpression",
                                        "start": 18138,
                                        "end": 18653,
                                        "loc": {
                                          "start": {
                                            "line": 427,
                                            "column": 47
                                          },
                                          "end": {
                                            "line": 439,
                                            "column": 13
                                          }
                                        },
                                        "id": null,
                                        "generator": false,
                                        "expression": false,
                                        "async": false,
                                        "params": [
                                          {
                                            "type": "Identifier",
                                            "start": 18147,
                                            "end": 18152,
                                            "loc": {
                                              "start": {
                                                "line": 427,
                                                "column": 56
                                              },
                                              "end": {
                                                "line": 427,
                                                "column": 61
                                              }
                                            },
                                            "name": "child"
                                          }
                                        ],
                                        "body": {
                                          "type": "BlockStatement",
                                          "start": 18154,
                                          "end": 18653,
                                          "loc": {
                                            "start": {
                                              "line": 427,
                                              "column": 63
                                            },
                                            "end": {
                                              "line": 439,
                                              "column": 13
                                            }
                                          },
                                          "body": [
                                            {
                                              "type": "IfStatement",
                                              "start": 18172,
                                              "end": 18224,
                                              "loc": {
                                                "start": {
                                                  "line": 428,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 429,
                                                  "column": 27
                                                }
                                              },
                                              "test": {
                                                "type": "CallExpression",
                                                "start": 18176,
                                                "end": 18195,
                                                "loc": {
                                                  "start": {
                                                    "line": 428,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 428,
                                                    "column": 39
                                                  }
                                                },
                                                "callee": {
                                                  "type": "Identifier",
                                                  "start": 18176,
                                                  "end": 18188,
                                                  "loc": {
                                                    "start": {
                                                      "line": 428,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 428,
                                                      "column": 32
                                                    }
                                                  },
                                                  "name": "ignoreFilter"
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 18189,
                                                    "end": 18194,
                                                    "loc": {
                                                      "start": {
                                                        "line": 428,
                                                        "column": 33
                                                      },
                                                      "end": {
                                                        "line": 428,
                                                        "column": 38
                                                      }
                                                    },
                                                    "name": "child"
                                                  }
                                                ]
                                              },
                                              "consequent": {
                                                "type": "ReturnStatement",
                                                "start": 18217,
                                                "end": 18224,
                                                "loc": {
                                                  "start": {
                                                    "line": 429,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 429,
                                                    "column": 27
                                                  }
                                                },
                                                "argument": null
                                              },
                                              "alternate": null
                                            },
                                            {
                                              "type": "IfStatement",
                                              "start": 18241,
                                              "end": 18639,
                                              "loc": {
                                                "start": {
                                                  "line": 430,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 438,
                                                  "column": 17
                                                }
                                              },
                                              "test": {
                                                "type": "BinaryExpression",
                                                "start": 18245,
                                                "end": 18267,
                                                "loc": {
                                                  "start": {
                                                    "line": 430,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 430,
                                                    "column": 42
                                                  }
                                                },
                                                "left": {
                                                  "type": "Identifier",
                                                  "start": 18245,
                                                  "end": 18250,
                                                  "loc": {
                                                    "start": {
                                                      "line": 430,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 430,
                                                      "column": 25
                                                    }
                                                  },
                                                  "name": "child"
                                                },
                                                "operator": "instanceof",
                                                "right": {
                                                  "type": "Identifier",
                                                  "start": 18262,
                                                  "end": 18267,
                                                  "loc": {
                                                    "start": {
                                                      "line": 430,
                                                      "column": 37
                                                    },
                                                    "end": {
                                                      "line": 430,
                                                      "column": 42
                                                    }
                                                  },
                                                  "name": "Point"
                                                }
                                              },
                                              "consequent": {
                                                "type": "BlockStatement",
                                                "start": 18269,
                                                "end": 18639,
                                                "loc": {
                                                  "start": {
                                                    "line": 430,
                                                    "column": 44
                                                  },
                                                  "end": {
                                                    "line": 438,
                                                    "column": 17
                                                  }
                                                },
                                                "body": [
                                                  {
                                                    "type": "VariableDeclaration",
                                                    "start": 18291,
                                                    "end": 18309,
                                                    "loc": {
                                                      "start": {
                                                        "line": 431,
                                                        "column": 20
                                                      },
                                                      "end": {
                                                        "line": 431,
                                                        "column": 38
                                                      }
                                                    },
                                                    "declarations": [
                                                      {
                                                        "type": "VariableDeclarator",
                                                        "start": 18295,
                                                        "end": 18308,
                                                        "loc": {
                                                          "start": {
                                                            "line": 431,
                                                            "column": 24
                                                          },
                                                          "end": {
                                                            "line": 431,
                                                            "column": 37
                                                          }
                                                        },
                                                        "id": {
                                                          "type": "Identifier",
                                                          "start": 18295,
                                                          "end": 18300,
                                                          "loc": {
                                                            "start": {
                                                              "line": 431,
                                                              "column": 24
                                                            },
                                                            "end": {
                                                              "line": 431,
                                                              "column": 29
                                                            }
                                                          },
                                                          "name": "point"
                                                        },
                                                        "init": {
                                                          "type": "Identifier",
                                                          "start": 18303,
                                                          "end": 18308,
                                                          "loc": {
                                                            "start": {
                                                              "line": 431,
                                                              "column": 32
                                                            },
                                                            "end": {
                                                              "line": 431,
                                                              "column": 37
                                                            }
                                                          },
                                                          "name": "child"
                                                        }
                                                      }
                                                    ],
                                                    "kind": "var"
                                                  },
                                                  {
                                                    "type": "VariableDeclaration",
                                                    "start": 18330,
                                                    "end": 18388,
                                                    "loc": {
                                                      "start": {
                                                        "line": 432,
                                                        "column": 20
                                                      },
                                                      "end": {
                                                        "line": 432,
                                                        "column": 78
                                                      }
                                                    },
                                                    "declarations": [
                                                      {
                                                        "type": "VariableDeclarator",
                                                        "start": 18334,
                                                        "end": 18387,
                                                        "loc": {
                                                          "start": {
                                                            "line": 432,
                                                            "column": 24
                                                          },
                                                          "end": {
                                                            "line": 432,
                                                            "column": 77
                                                          }
                                                        },
                                                        "id": {
                                                          "type": "Identifier",
                                                          "start": 18334,
                                                          "end": 18349,
                                                          "loc": {
                                                            "start": {
                                                              "line": 432,
                                                              "column": 24
                                                            },
                                                            "end": {
                                                              "line": 432,
                                                              "column": 39
                                                            }
                                                          },
                                                          "name": "currentDistance"
                                                        },
                                                        "init": {
                                                          "type": "CallExpression",
                                                          "start": 18352,
                                                          "end": 18387,
                                                          "loc": {
                                                            "start": {
                                                              "line": 432,
                                                              "column": 42
                                                            },
                                                            "end": {
                                                              "line": 432,
                                                              "column": 77
                                                            }
                                                          },
                                                          "callee": {
                                                            "type": "MemberExpression",
                                                            "start": 18352,
                                                            "end": 18377,
                                                            "loc": {
                                                              "start": {
                                                                "line": 432,
                                                                "column": 42
                                                              },
                                                              "end": {
                                                                "line": 432,
                                                                "column": 67
                                                              }
                                                            },
                                                            "object": {
                                                              "type": "MemberExpression",
                                                              "start": 18352,
                                                              "end": 18366,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 432,
                                                                  "column": 42
                                                                },
                                                                "end": {
                                                                  "line": 432,
                                                                  "column": 56
                                                                }
                                                              },
                                                              "object": {
                                                                "type": "Identifier",
                                                                "start": 18352,
                                                                "end": 18357,
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 432,
                                                                    "column": 42
                                                                  },
                                                                  "end": {
                                                                    "line": 432,
                                                                    "column": 47
                                                                  }
                                                                },
                                                                "name": "point"
                                                              },
                                                              "property": {
                                                                "type": "Identifier",
                                                                "start": 18358,
                                                                "end": 18366,
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 432,
                                                                    "column": 48
                                                                  },
                                                                  "end": {
                                                                    "line": 432,
                                                                    "column": 56
                                                                  }
                                                                },
                                                                "name": "position"
                                                              },
                                                              "computed": false
                                                            },
                                                            "property": {
                                                              "type": "Identifier",
                                                              "start": 18367,
                                                              "end": 18377,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 432,
                                                                  "column": 57
                                                                },
                                                                "end": {
                                                                  "line": 432,
                                                                  "column": 67
                                                                }
                                                              },
                                                              "name": "distanceTo"
                                                            },
                                                            "computed": false
                                                          },
                                                          "arguments": [
                                                            {
                                                              "type": "Identifier",
                                                              "start": 18378,
                                                              "end": 18386,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 432,
                                                                  "column": 68
                                                                },
                                                                "end": {
                                                                  "line": 432,
                                                                  "column": 76
                                                                }
                                                              },
                                                              "name": "newPoint"
                                                            }
                                                          ]
                                                        }
                                                      }
                                                    ],
                                                    "kind": "var"
                                                  },
                                                  {
                                                    "type": "IfStatement",
                                                    "start": 18409,
                                                    "end": 18621,
                                                    "loc": {
                                                      "start": {
                                                        "line": 433,
                                                        "column": 20
                                                      },
                                                      "end": {
                                                        "line": 437,
                                                        "column": 21
                                                      }
                                                    },
                                                    "test": {
                                                      "type": "BinaryExpression",
                                                      "start": 18413,
                                                      "end": 18439,
                                                      "loc": {
                                                        "start": {
                                                          "line": 433,
                                                          "column": 24
                                                        },
                                                        "end": {
                                                          "line": 433,
                                                          "column": 50
                                                        }
                                                      },
                                                      "left": {
                                                        "type": "Identifier",
                                                        "start": 18413,
                                                        "end": 18428,
                                                        "loc": {
                                                          "start": {
                                                            "line": 433,
                                                            "column": 24
                                                          },
                                                          "end": {
                                                            "line": 433,
                                                            "column": 39
                                                          }
                                                        },
                                                        "name": "currentDistance"
                                                      },
                                                      "operator": "<",
                                                      "right": {
                                                        "type": "Identifier",
                                                        "start": 18431,
                                                        "end": 18439,
                                                        "loc": {
                                                          "start": {
                                                            "line": 433,
                                                            "column": 42
                                                          },
                                                          "end": {
                                                            "line": 433,
                                                            "column": 50
                                                          }
                                                        },
                                                        "name": "distance"
                                                      }
                                                    },
                                                    "consequent": {
                                                      "type": "BlockStatement",
                                                      "start": 18441,
                                                      "end": 18621,
                                                      "loc": {
                                                        "start": {
                                                          "line": 433,
                                                          "column": 52
                                                        },
                                                        "end": {
                                                          "line": 437,
                                                          "column": 21
                                                        }
                                                      },
                                                      "body": [
                                                        {
                                                          "type": "ExpressionStatement",
                                                          "start": 18467,
                                                          "end": 18494,
                                                          "loc": {
                                                            "start": {
                                                              "line": 434,
                                                              "column": 24
                                                            },
                                                            "end": {
                                                              "line": 434,
                                                              "column": 51
                                                            }
                                                          },
                                                          "expression": {
                                                            "type": "AssignmentExpression",
                                                            "start": 18467,
                                                            "end": 18493,
                                                            "loc": {
                                                              "start": {
                                                                "line": 434,
                                                                "column": 24
                                                              },
                                                              "end": {
                                                                "line": 434,
                                                                "column": 50
                                                              }
                                                            },
                                                            "operator": "=",
                                                            "left": {
                                                              "type": "Identifier",
                                                              "start": 18467,
                                                              "end": 18475,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 434,
                                                                  "column": 24
                                                                },
                                                                "end": {
                                                                  "line": 434,
                                                                  "column": 32
                                                                }
                                                              },
                                                              "name": "distance"
                                                            },
                                                            "right": {
                                                              "type": "Identifier",
                                                              "start": 18478,
                                                              "end": 18493,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 434,
                                                                  "column": 35
                                                                },
                                                                "end": {
                                                                  "line": 434,
                                                                  "column": 50
                                                                }
                                                              },
                                                              "name": "currentDistance"
                                                            }
                                                          }
                                                        },
                                                        {
                                                          "type": "ExpressionStatement",
                                                          "start": 18519,
                                                          "end": 18557,
                                                          "loc": {
                                                            "start": {
                                                              "line": 435,
                                                              "column": 24
                                                            },
                                                            "end": {
                                                              "line": 435,
                                                              "column": 62
                                                            }
                                                          },
                                                          "expression": {
                                                            "type": "AssignmentExpression",
                                                            "start": 18519,
                                                            "end": 18556,
                                                            "loc": {
                                                              "start": {
                                                                "line": 435,
                                                                "column": 24
                                                              },
                                                              "end": {
                                                                "line": 435,
                                                                "column": 61
                                                              }
                                                            },
                                                            "operator": "=",
                                                            "left": {
                                                              "type": "Identifier",
                                                              "start": 18519,
                                                              "end": 18531,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 435,
                                                                  "column": 24
                                                                },
                                                                "end": {
                                                                  "line": 435,
                                                                  "column": 36
                                                                }
                                                              },
                                                              "name": "closestPoint"
                                                            },
                                                            "right": {
                                                              "type": "CallExpression",
                                                              "start": 18534,
                                                              "end": 18556,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 435,
                                                                  "column": 39
                                                                },
                                                                "end": {
                                                                  "line": 435,
                                                                  "column": 61
                                                                }
                                                              },
                                                              "callee": {
                                                                "type": "MemberExpression",
                                                                "start": 18534,
                                                                "end": 18554,
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 435,
                                                                    "column": 39
                                                                  },
                                                                  "end": {
                                                                    "line": 435,
                                                                    "column": 59
                                                                  }
                                                                },
                                                                "object": {
                                                                  "type": "MemberExpression",
                                                                  "start": 18534,
                                                                  "end": 18548,
                                                                  "loc": {
                                                                    "start": {
                                                                      "line": 435,
                                                                      "column": 39
                                                                    },
                                                                    "end": {
                                                                      "line": 435,
                                                                      "column": 53
                                                                    }
                                                                  },
                                                                  "object": {
                                                                    "type": "Identifier",
                                                                    "start": 18534,
                                                                    "end": 18539,
                                                                    "loc": {
                                                                      "start": {
                                                                        "line": 435,
                                                                        "column": 39
                                                                      },
                                                                      "end": {
                                                                        "line": 435,
                                                                        "column": 44
                                                                      }
                                                                    },
                                                                    "name": "point"
                                                                  },
                                                                  "property": {
                                                                    "type": "Identifier",
                                                                    "start": 18540,
                                                                    "end": 18548,
                                                                    "loc": {
                                                                      "start": {
                                                                        "line": 435,
                                                                        "column": 45
                                                                      },
                                                                      "end": {
                                                                        "line": 435,
                                                                        "column": 53
                                                                      }
                                                                    },
                                                                    "name": "position"
                                                                  },
                                                                  "computed": false
                                                                },
                                                                "property": {
                                                                  "type": "Identifier",
                                                                  "start": 18549,
                                                                  "end": 18554,
                                                                  "loc": {
                                                                    "start": {
                                                                      "line": 435,
                                                                      "column": 54
                                                                    },
                                                                    "end": {
                                                                      "line": 435,
                                                                      "column": 59
                                                                    }
                                                                  },
                                                                  "name": "clone"
                                                                },
                                                                "computed": false
                                                              },
                                                              "arguments": []
                                                            }
                                                          }
                                                        },
                                                        {
                                                          "type": "ExpressionStatement",
                                                          "start": 18582,
                                                          "end": 18599,
                                                          "loc": {
                                                            "start": {
                                                              "line": 436,
                                                              "column": 24
                                                            },
                                                            "end": {
                                                              "line": 436,
                                                              "column": 41
                                                            }
                                                          },
                                                          "expression": {
                                                            "type": "AssignmentExpression",
                                                            "start": 18582,
                                                            "end": 18598,
                                                            "loc": {
                                                              "start": {
                                                                "line": 436,
                                                                "column": 24
                                                              },
                                                              "end": {
                                                                "line": 436,
                                                                "column": 40
                                                              }
                                                            },
                                                            "operator": "=",
                                                            "left": {
                                                              "type": "Identifier",
                                                              "start": 18582,
                                                              "end": 18591,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 436,
                                                                  "column": 24
                                                                },
                                                                "end": {
                                                                  "line": 436,
                                                                  "column": 33
                                                                }
                                                              },
                                                              "name": "isSnapped"
                                                            },
                                                            "right": {
                                                              "type": "Literal",
                                                              "start": 18594,
                                                              "end": 18598,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 436,
                                                                  "column": 36
                                                                },
                                                                "end": {
                                                                  "line": 436,
                                                                  "column": 40
                                                                }
                                                              },
                                                              "value": true,
                                                              "rawValue": true,
                                                              "raw": "true"
                                                            }
                                                          }
                                                        }
                                                      ]
                                                    },
                                                    "alternate": null
                                                  }
                                                ]
                                              },
                                              "alternate": null
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  }
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 18677,
                      "end": 18835,
                      "loc": {
                        "start": {
                          "line": 442,
                          "column": 8
                        },
                        "end": {
                          "line": 446,
                          "column": 10
                        }
                      },
                      "argument": {
                        "type": "ObjectExpression",
                        "start": 18684,
                        "end": 18834,
                        "loc": {
                          "start": {
                            "line": 442,
                            "column": 15
                          },
                          "end": {
                            "line": 446,
                            "column": 9
                          }
                        },
                        "properties": [
                          {
                            "type": "Property",
                            "start": 18698,
                            "end": 18727,
                            "loc": {
                              "start": {
                                "line": 443,
                                "column": 12
                              },
                              "end": {
                                "line": 443,
                                "column": 41
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 18698,
                              "end": 18713,
                              "loc": {
                                "start": {
                                  "line": 443,
                                  "column": 12
                                },
                                "end": {
                                  "line": 443,
                                  "column": 27
                                }
                              },
                              "name": "snappedPosition"
                            },
                            "value": {
                              "type": "Identifier",
                              "start": 18715,
                              "end": 18727,
                              "loc": {
                                "start": {
                                  "line": 443,
                                  "column": 29
                                },
                                "end": {
                                  "line": 443,
                                  "column": 41
                                }
                              },
                              "name": "closestPoint"
                            },
                            "kind": "init"
                          },
                          {
                            "type": "Property",
                            "start": 18741,
                            "end": 18790,
                            "loc": {
                              "start": {
                                "line": 444,
                                "column": 12
                              },
                              "end": {
                                "line": 444,
                                "column": 61
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 18741,
                              "end": 18754,
                              "loc": {
                                "start": {
                                  "line": 444,
                                  "column": 12
                                },
                                "end": {
                                  "line": 444,
                                  "column": 25
                                }
                              },
                              "name": "snappingShift"
                            },
                            "value": {
                              "type": "CallExpression",
                              "start": 18756,
                              "end": 18790,
                              "loc": {
                                "start": {
                                  "line": 444,
                                  "column": 27
                                },
                                "end": {
                                  "line": 444,
                                  "column": 61
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 18756,
                                "end": 18780,
                                "loc": {
                                  "start": {
                                    "line": 444,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 444,
                                    "column": 51
                                  }
                                },
                                "object": {
                                  "type": "CallExpression",
                                  "start": 18756,
                                  "end": 18776,
                                  "loc": {
                                    "start": {
                                      "line": 444,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 444,
                                      "column": 47
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 18756,
                                    "end": 18774,
                                    "loc": {
                                      "start": {
                                        "line": 444,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 444,
                                        "column": 45
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 18756,
                                      "end": 18768,
                                      "loc": {
                                        "start": {
                                          "line": 444,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 444,
                                          "column": 39
                                        }
                                      },
                                      "name": "closestPoint"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 18769,
                                      "end": 18774,
                                      "loc": {
                                        "start": {
                                          "line": 444,
                                          "column": 40
                                        },
                                        "end": {
                                          "line": 444,
                                          "column": 45
                                        }
                                      },
                                      "name": "clone"
                                    },
                                    "computed": false
                                  },
                                  "arguments": []
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 18777,
                                  "end": 18780,
                                  "loc": {
                                    "start": {
                                      "line": 444,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 444,
                                      "column": 51
                                    }
                                  },
                                  "name": "sub"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 18781,
                                  "end": 18789,
                                  "loc": {
                                    "start": {
                                      "line": 444,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 444,
                                      "column": 60
                                    }
                                  },
                                  "name": "newPoint"
                                }
                              ]
                            },
                            "kind": "init"
                          },
                          {
                            "type": "Property",
                            "start": 18804,
                            "end": 18824,
                            "loc": {
                              "start": {
                                "line": 445,
                                "column": 12
                              },
                              "end": {
                                "line": 445,
                                "column": 32
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 18804,
                              "end": 18813,
                              "loc": {
                                "start": {
                                  "line": 445,
                                  "column": 12
                                },
                                "end": {
                                  "line": 445,
                                  "column": 21
                                }
                              },
                              "name": "isSnapped"
                            },
                            "value": {
                              "type": "Identifier",
                              "start": 18815,
                              "end": 18824,
                              "loc": {
                                "start": {
                                  "line": 445,
                                  "column": 23
                                },
                                "end": {
                                  "line": 445,
                                  "column": 32
                                }
                              },
                              "name": "isSnapped"
                            },
                            "kind": "init"
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 18847,
              "end": 19654,
              "loc": {
                "start": {
                  "line": 449,
                  "column": 4
                },
                "end": {
                  "line": 468,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 18847,
                "end": 18866,
                "loc": {
                  "start": {
                    "line": 449,
                    "column": 4
                  },
                  "end": {
                    "line": 449,
                    "column": 23
                  }
                },
                "name": "getClosestGridPoint"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 18866,
                "end": 19654,
                "loc": {
                  "start": {
                    "line": 449,
                    "column": 23
                  },
                  "end": {
                    "line": 468,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 18867,
                    "end": 18875,
                    "loc": {
                      "start": {
                        "line": 449,
                        "column": 24
                      },
                      "end": {
                        "line": 449,
                        "column": 32
                      }
                    },
                    "name": "newPoint"
                  },
                  {
                    "type": "Identifier",
                    "start": 18877,
                    "end": 18888,
                    "loc": {
                      "start": {
                        "line": 449,
                        "column": 34
                      },
                      "end": {
                        "line": 449,
                        "column": 45
                      }
                    },
                    "name": "maxDistance"
                  },
                  {
                    "type": "Identifier",
                    "start": 18890,
                    "end": 18902,
                    "loc": {
                      "start": {
                        "line": 449,
                        "column": 47
                      },
                      "end": {
                        "line": 449,
                        "column": 59
                      }
                    },
                    "name": "ignoreFilter"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 18904,
                  "end": 19654,
                  "loc": {
                    "start": {
                      "line": 449,
                      "column": 61
                    },
                    "end": {
                      "line": 468,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 18914,
                      "end": 18950,
                      "loc": {
                        "start": {
                          "line": 450,
                          "column": 8
                        },
                        "end": {
                          "line": 450,
                          "column": 44
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 18918,
                          "end": 18949,
                          "loc": {
                            "start": {
                              "line": 450,
                              "column": 12
                            },
                            "end": {
                              "line": 450,
                              "column": 43
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 18918,
                            "end": 18930,
                            "loc": {
                              "start": {
                                "line": 450,
                                "column": 12
                              },
                              "end": {
                                "line": 450,
                                "column": 24
                              }
                            },
                            "name": "closestPoint"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 18933,
                            "end": 18949,
                            "loc": {
                              "start": {
                                "line": 450,
                                "column": 27
                              },
                              "end": {
                                "line": 450,
                                "column": 43
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 18933,
                              "end": 18947,
                              "loc": {
                                "start": {
                                  "line": 450,
                                  "column": 27
                                },
                                "end": {
                                  "line": 450,
                                  "column": 41
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 18933,
                                "end": 18941,
                                "loc": {
                                  "start": {
                                    "line": 450,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 450,
                                    "column": 35
                                  }
                                },
                                "name": "newPoint"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 18942,
                                "end": 18947,
                                "loc": {
                                  "start": {
                                    "line": 450,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 450,
                                    "column": 41
                                  }
                                },
                                "name": "clone"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 18959,
                      "end": 18981,
                      "loc": {
                        "start": {
                          "line": 451,
                          "column": 8
                        },
                        "end": {
                          "line": 451,
                          "column": 30
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 18963,
                          "end": 18980,
                          "loc": {
                            "start": {
                              "line": 451,
                              "column": 12
                            },
                            "end": {
                              "line": 451,
                              "column": 29
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 18963,
                            "end": 18972,
                            "loc": {
                              "start": {
                                "line": 451,
                                "column": 12
                              },
                              "end": {
                                "line": 451,
                                "column": 21
                              }
                            },
                            "name": "isSnapped"
                          },
                          "init": {
                            "type": "Literal",
                            "start": 18975,
                            "end": 18980,
                            "loc": {
                              "start": {
                                "line": 451,
                                "column": 24
                              },
                              "end": {
                                "line": 451,
                                "column": 29
                              }
                            },
                            "value": false,
                            "rawValue": false,
                            "raw": "false"
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 18990,
                      "end": 19480,
                      "loc": {
                        "start": {
                          "line": 452,
                          "column": 8
                        },
                        "end": {
                          "line": 461,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 18994,
                        "end": 19013,
                        "loc": {
                          "start": {
                            "line": 452,
                            "column": 12
                          },
                          "end": {
                            "line": 452,
                            "column": 31
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 18994,
                          "end": 19007,
                          "loc": {
                            "start": {
                              "line": 452,
                              "column": 12
                            },
                            "end": {
                              "line": 452,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 18994,
                            "end": 18998,
                            "loc": {
                              "start": {
                                "line": 452,
                                "column": 12
                              },
                              "end": {
                                "line": 452,
                                "column": 16
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 18999,
                            "end": 19007,
                            "loc": {
                              "start": {
                                "line": 452,
                                "column": 17
                              },
                              "end": {
                                "line": 452,
                                "column": 25
                              }
                            },
                            "name": "gridStep"
                          },
                          "computed": false
                        },
                        "operator": ">",
                        "right": {
                          "type": "Literal",
                          "start": 19010,
                          "end": 19013,
                          "loc": {
                            "start": {
                              "line": 452,
                              "column": 28
                            },
                            "end": {
                              "line": 452,
                              "column": 31
                            }
                          },
                          "value": 0,
                          "rawValue": 0,
                          "raw": "0.0"
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 19015,
                        "end": 19480,
                        "loc": {
                          "start": {
                            "line": 452,
                            "column": 33
                          },
                          "end": {
                            "line": 461,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 19029,
                            "end": 19087,
                            "loc": {
                              "start": {
                                "line": 453,
                                "column": 12
                              },
                              "end": {
                                "line": 453,
                                "column": 70
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 19033,
                                "end": 19086,
                                "loc": {
                                  "start": {
                                    "line": 453,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 453,
                                    "column": 69
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 19033,
                                  "end": 19041,
                                  "loc": {
                                    "start": {
                                      "line": 453,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 453,
                                      "column": 24
                                    }
                                  },
                                  "name": "distance"
                                },
                                "init": {
                                  "type": "CallExpression",
                                  "start": 19044,
                                  "end": 19086,
                                  "loc": {
                                    "start": {
                                      "line": 453,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 453,
                                      "column": 69
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 19044,
                                    "end": 19052,
                                    "loc": {
                                      "start": {
                                        "line": 453,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 453,
                                        "column": 35
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 19044,
                                      "end": 19048,
                                      "loc": {
                                        "start": {
                                          "line": 453,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 453,
                                          "column": 31
                                        }
                                      },
                                      "name": "Math"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 19049,
                                      "end": 19052,
                                      "loc": {
                                        "start": {
                                          "line": 453,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 453,
                                          "column": 35
                                        }
                                      },
                                      "name": "min"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 19053,
                                      "end": 19064,
                                      "loc": {
                                        "start": {
                                          "line": 453,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 453,
                                          "column": 47
                                        }
                                      },
                                      "name": "maxDistance"
                                    },
                                    {
                                      "type": "BinaryExpression",
                                      "start": 19066,
                                      "end": 19085,
                                      "loc": {
                                        "start": {
                                          "line": 453,
                                          "column": 49
                                        },
                                        "end": {
                                          "line": 453,
                                          "column": 68
                                        }
                                      },
                                      "left": {
                                        "type": "MemberExpression",
                                        "start": 19066,
                                        "end": 19079,
                                        "loc": {
                                          "start": {
                                            "line": 453,
                                            "column": 49
                                          },
                                          "end": {
                                            "line": 453,
                                            "column": 62
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 19066,
                                          "end": 19070,
                                          "loc": {
                                            "start": {
                                              "line": 453,
                                              "column": 49
                                            },
                                            "end": {
                                              "line": 453,
                                              "column": 53
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 19071,
                                          "end": 19079,
                                          "loc": {
                                            "start": {
                                              "line": 453,
                                              "column": 54
                                            },
                                            "end": {
                                              "line": 453,
                                              "column": 62
                                            }
                                          },
                                          "name": "gridStep"
                                        },
                                        "computed": false
                                      },
                                      "operator": "/",
                                      "right": {
                                        "type": "Literal",
                                        "start": 19082,
                                        "end": 19085,
                                        "loc": {
                                          "start": {
                                            "line": 453,
                                            "column": 65
                                          },
                                          "end": {
                                            "line": 453,
                                            "column": 68
                                          }
                                        },
                                        "value": 3,
                                        "rawValue": 3,
                                        "raw": "3.0"
                                      }
                                    }
                                  ]
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 19100,
                            "end": 19163,
                            "loc": {
                              "start": {
                                "line": 454,
                                "column": 12
                              },
                              "end": {
                                "line": 454,
                                "column": 75
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 19104,
                                "end": 19162,
                                "loc": {
                                  "start": {
                                    "line": 454,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 454,
                                    "column": 74
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 19104,
                                  "end": 19105,
                                  "loc": {
                                    "start": {
                                      "line": 454,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 454,
                                      "column": 17
                                    }
                                  },
                                  "name": "x"
                                },
                                "init": {
                                  "type": "BinaryExpression",
                                  "start": 19108,
                                  "end": 19162,
                                  "loc": {
                                    "start": {
                                      "line": 454,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 454,
                                      "column": 74
                                    }
                                  },
                                  "left": {
                                    "type": "CallExpression",
                                    "start": 19108,
                                    "end": 19146,
                                    "loc": {
                                      "start": {
                                        "line": 454,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 454,
                                        "column": 58
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 19108,
                                      "end": 19118,
                                      "loc": {
                                        "start": {
                                          "line": 454,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 454,
                                          "column": 30
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 19108,
                                        "end": 19112,
                                        "loc": {
                                          "start": {
                                            "line": 454,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 454,
                                            "column": 24
                                          }
                                        },
                                        "name": "Math"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 19113,
                                        "end": 19118,
                                        "loc": {
                                          "start": {
                                            "line": 454,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 454,
                                            "column": 30
                                          }
                                        },
                                        "name": "round"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 19119,
                                        "end": 19145,
                                        "loc": {
                                          "start": {
                                            "line": 454,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 454,
                                            "column": 57
                                          }
                                        },
                                        "left": {
                                          "type": "MemberExpression",
                                          "start": 19119,
                                          "end": 19129,
                                          "loc": {
                                            "start": {
                                              "line": 454,
                                              "column": 31
                                            },
                                            "end": {
                                              "line": 454,
                                              "column": 41
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 19119,
                                            "end": 19127,
                                            "loc": {
                                              "start": {
                                                "line": 454,
                                                "column": 31
                                              },
                                              "end": {
                                                "line": 454,
                                                "column": 39
                                              }
                                            },
                                            "name": "newPoint"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 19128,
                                            "end": 19129,
                                            "loc": {
                                              "start": {
                                                "line": 454,
                                                "column": 40
                                              },
                                              "end": {
                                                "line": 454,
                                                "column": 41
                                              }
                                            },
                                            "name": "x"
                                          },
                                          "computed": false
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "MemberExpression",
                                          "start": 19132,
                                          "end": 19145,
                                          "loc": {
                                            "start": {
                                              "line": 454,
                                              "column": 44
                                            },
                                            "end": {
                                              "line": 454,
                                              "column": 57
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 19132,
                                            "end": 19136,
                                            "loc": {
                                              "start": {
                                                "line": 454,
                                                "column": 44
                                              },
                                              "end": {
                                                "line": 454,
                                                "column": 48
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 19137,
                                            "end": 19145,
                                            "loc": {
                                              "start": {
                                                "line": 454,
                                                "column": 49
                                              },
                                              "end": {
                                                "line": 454,
                                                "column": 57
                                              }
                                            },
                                            "name": "gridStep"
                                          },
                                          "computed": false
                                        }
                                      }
                                    ]
                                  },
                                  "operator": "*",
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 19149,
                                    "end": 19162,
                                    "loc": {
                                      "start": {
                                        "line": 454,
                                        "column": 61
                                      },
                                      "end": {
                                        "line": 454,
                                        "column": 74
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 19149,
                                      "end": 19153,
                                      "loc": {
                                        "start": {
                                          "line": 454,
                                          "column": 61
                                        },
                                        "end": {
                                          "line": 454,
                                          "column": 65
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 19154,
                                      "end": 19162,
                                      "loc": {
                                        "start": {
                                          "line": 454,
                                          "column": 66
                                        },
                                        "end": {
                                          "line": 454,
                                          "column": 74
                                        }
                                      },
                                      "name": "gridStep"
                                    },
                                    "computed": false
                                  }
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 19176,
                            "end": 19239,
                            "loc": {
                              "start": {
                                "line": 455,
                                "column": 12
                              },
                              "end": {
                                "line": 455,
                                "column": 75
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 19180,
                                "end": 19238,
                                "loc": {
                                  "start": {
                                    "line": 455,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 455,
                                    "column": 74
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 19180,
                                  "end": 19181,
                                  "loc": {
                                    "start": {
                                      "line": 455,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 455,
                                      "column": 17
                                    }
                                  },
                                  "name": "y"
                                },
                                "init": {
                                  "type": "BinaryExpression",
                                  "start": 19184,
                                  "end": 19238,
                                  "loc": {
                                    "start": {
                                      "line": 455,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 455,
                                      "column": 74
                                    }
                                  },
                                  "left": {
                                    "type": "CallExpression",
                                    "start": 19184,
                                    "end": 19222,
                                    "loc": {
                                      "start": {
                                        "line": 455,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 455,
                                        "column": 58
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 19184,
                                      "end": 19194,
                                      "loc": {
                                        "start": {
                                          "line": 455,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 455,
                                          "column": 30
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 19184,
                                        "end": 19188,
                                        "loc": {
                                          "start": {
                                            "line": 455,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 455,
                                            "column": 24
                                          }
                                        },
                                        "name": "Math"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 19189,
                                        "end": 19194,
                                        "loc": {
                                          "start": {
                                            "line": 455,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 455,
                                            "column": 30
                                          }
                                        },
                                        "name": "round"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 19195,
                                        "end": 19221,
                                        "loc": {
                                          "start": {
                                            "line": 455,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 455,
                                            "column": 57
                                          }
                                        },
                                        "left": {
                                          "type": "MemberExpression",
                                          "start": 19195,
                                          "end": 19205,
                                          "loc": {
                                            "start": {
                                              "line": 455,
                                              "column": 31
                                            },
                                            "end": {
                                              "line": 455,
                                              "column": 41
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 19195,
                                            "end": 19203,
                                            "loc": {
                                              "start": {
                                                "line": 455,
                                                "column": 31
                                              },
                                              "end": {
                                                "line": 455,
                                                "column": 39
                                              }
                                            },
                                            "name": "newPoint"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 19204,
                                            "end": 19205,
                                            "loc": {
                                              "start": {
                                                "line": 455,
                                                "column": 40
                                              },
                                              "end": {
                                                "line": 455,
                                                "column": 41
                                              }
                                            },
                                            "name": "y"
                                          },
                                          "computed": false
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "MemberExpression",
                                          "start": 19208,
                                          "end": 19221,
                                          "loc": {
                                            "start": {
                                              "line": 455,
                                              "column": 44
                                            },
                                            "end": {
                                              "line": 455,
                                              "column": 57
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 19208,
                                            "end": 19212,
                                            "loc": {
                                              "start": {
                                                "line": 455,
                                                "column": 44
                                              },
                                              "end": {
                                                "line": 455,
                                                "column": 48
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 19213,
                                            "end": 19221,
                                            "loc": {
                                              "start": {
                                                "line": 455,
                                                "column": 49
                                              },
                                              "end": {
                                                "line": 455,
                                                "column": 57
                                              }
                                            },
                                            "name": "gridStep"
                                          },
                                          "computed": false
                                        }
                                      }
                                    ]
                                  },
                                  "operator": "*",
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 19225,
                                    "end": 19238,
                                    "loc": {
                                      "start": {
                                        "line": 455,
                                        "column": 61
                                      },
                                      "end": {
                                        "line": 455,
                                        "column": 74
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 19225,
                                      "end": 19229,
                                      "loc": {
                                        "start": {
                                          "line": 455,
                                          "column": 61
                                        },
                                        "end": {
                                          "line": 455,
                                          "column": 65
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 19230,
                                      "end": 19238,
                                      "loc": {
                                        "start": {
                                          "line": 455,
                                          "column": 66
                                        },
                                        "end": {
                                          "line": 455,
                                          "column": 74
                                        }
                                      },
                                      "name": "gridStep"
                                    },
                                    "computed": false
                                  }
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "IfStatement",
                            "start": 19252,
                            "end": 19470,
                            "loc": {
                              "start": {
                                "line": 456,
                                "column": 12
                              },
                              "end": {
                                "line": 460,
                                "column": 13
                              }
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 19256,
                              "end": 19347,
                              "loc": {
                                "start": {
                                  "line": 456,
                                  "column": 16
                                },
                                "end": {
                                  "line": 456,
                                  "column": 107
                                }
                              },
                              "left": {
                                "type": "BinaryExpression",
                                "start": 19257,
                                "end": 19326,
                                "loc": {
                                  "start": {
                                    "line": 456,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 456,
                                    "column": 86
                                  }
                                },
                                "left": {
                                  "type": "BinaryExpression",
                                  "start": 19257,
                                  "end": 19290,
                                  "loc": {
                                    "start": {
                                      "line": 456,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 456,
                                      "column": 50
                                    }
                                  },
                                  "left": {
                                    "type": "BinaryExpression",
                                    "start": 19258,
                                    "end": 19272,
                                    "loc": {
                                      "start": {
                                        "line": 456,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 456,
                                        "column": 32
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 19258,
                                      "end": 19259,
                                      "loc": {
                                        "start": {
                                          "line": 456,
                                          "column": 18
                                        },
                                        "end": {
                                          "line": 456,
                                          "column": 19
                                        }
                                      },
                                      "name": "x"
                                    },
                                    "operator": "-",
                                    "right": {
                                      "type": "MemberExpression",
                                      "start": 19262,
                                      "end": 19272,
                                      "loc": {
                                        "start": {
                                          "line": 456,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 456,
                                          "column": 32
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 19262,
                                        "end": 19270,
                                        "loc": {
                                          "start": {
                                            "line": 456,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 456,
                                            "column": 30
                                          }
                                        },
                                        "name": "newPoint"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 19271,
                                        "end": 19272,
                                        "loc": {
                                          "start": {
                                            "line": 456,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 456,
                                            "column": 32
                                          }
                                        },
                                        "name": "x"
                                      },
                                      "computed": false
                                    },
                                    "parenthesizedExpression": true
                                  },
                                  "operator": "*",
                                  "right": {
                                    "type": "BinaryExpression",
                                    "start": 19275,
                                    "end": 19289,
                                    "loc": {
                                      "start": {
                                        "line": 456,
                                        "column": 35
                                      },
                                      "end": {
                                        "line": 456,
                                        "column": 49
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 19275,
                                      "end": 19276,
                                      "loc": {
                                        "start": {
                                          "line": 456,
                                          "column": 35
                                        },
                                        "end": {
                                          "line": 456,
                                          "column": 36
                                        }
                                      },
                                      "name": "x"
                                    },
                                    "operator": "-",
                                    "right": {
                                      "type": "MemberExpression",
                                      "start": 19279,
                                      "end": 19289,
                                      "loc": {
                                        "start": {
                                          "line": 456,
                                          "column": 39
                                        },
                                        "end": {
                                          "line": 456,
                                          "column": 49
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 19279,
                                        "end": 19287,
                                        "loc": {
                                          "start": {
                                            "line": 456,
                                            "column": 39
                                          },
                                          "end": {
                                            "line": 456,
                                            "column": 47
                                          }
                                        },
                                        "name": "newPoint"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 19288,
                                        "end": 19289,
                                        "loc": {
                                          "start": {
                                            "line": 456,
                                            "column": 48
                                          },
                                          "end": {
                                            "line": 456,
                                            "column": 49
                                          }
                                        },
                                        "name": "x"
                                      },
                                      "computed": false
                                    },
                                    "parenthesizedExpression": true
                                  }
                                },
                                "operator": "+",
                                "right": {
                                  "type": "BinaryExpression",
                                  "start": 19293,
                                  "end": 19326,
                                  "loc": {
                                    "start": {
                                      "line": 456,
                                      "column": 53
                                    },
                                    "end": {
                                      "line": 456,
                                      "column": 86
                                    }
                                  },
                                  "left": {
                                    "type": "BinaryExpression",
                                    "start": 19294,
                                    "end": 19308,
                                    "loc": {
                                      "start": {
                                        "line": 456,
                                        "column": 54
                                      },
                                      "end": {
                                        "line": 456,
                                        "column": 68
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 19294,
                                      "end": 19295,
                                      "loc": {
                                        "start": {
                                          "line": 456,
                                          "column": 54
                                        },
                                        "end": {
                                          "line": 456,
                                          "column": 55
                                        }
                                      },
                                      "name": "y"
                                    },
                                    "operator": "-",
                                    "right": {
                                      "type": "MemberExpression",
                                      "start": 19298,
                                      "end": 19308,
                                      "loc": {
                                        "start": {
                                          "line": 456,
                                          "column": 58
                                        },
                                        "end": {
                                          "line": 456,
                                          "column": 68
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 19298,
                                        "end": 19306,
                                        "loc": {
                                          "start": {
                                            "line": 456,
                                            "column": 58
                                          },
                                          "end": {
                                            "line": 456,
                                            "column": 66
                                          }
                                        },
                                        "name": "newPoint"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 19307,
                                        "end": 19308,
                                        "loc": {
                                          "start": {
                                            "line": 456,
                                            "column": 67
                                          },
                                          "end": {
                                            "line": 456,
                                            "column": 68
                                          }
                                        },
                                        "name": "y"
                                      },
                                      "computed": false
                                    },
                                    "parenthesizedExpression": true
                                  },
                                  "operator": "*",
                                  "right": {
                                    "type": "BinaryExpression",
                                    "start": 19311,
                                    "end": 19325,
                                    "loc": {
                                      "start": {
                                        "line": 456,
                                        "column": 71
                                      },
                                      "end": {
                                        "line": 456,
                                        "column": 85
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 19311,
                                      "end": 19312,
                                      "loc": {
                                        "start": {
                                          "line": 456,
                                          "column": 71
                                        },
                                        "end": {
                                          "line": 456,
                                          "column": 72
                                        }
                                      },
                                      "name": "y"
                                    },
                                    "operator": "-",
                                    "right": {
                                      "type": "MemberExpression",
                                      "start": 19315,
                                      "end": 19325,
                                      "loc": {
                                        "start": {
                                          "line": 456,
                                          "column": 75
                                        },
                                        "end": {
                                          "line": 456,
                                          "column": 85
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 19315,
                                        "end": 19323,
                                        "loc": {
                                          "start": {
                                            "line": 456,
                                            "column": 75
                                          },
                                          "end": {
                                            "line": 456,
                                            "column": 83
                                          }
                                        },
                                        "name": "newPoint"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 19324,
                                        "end": 19325,
                                        "loc": {
                                          "start": {
                                            "line": 456,
                                            "column": 84
                                          },
                                          "end": {
                                            "line": 456,
                                            "column": 85
                                          }
                                        },
                                        "name": "y"
                                      },
                                      "computed": false
                                    },
                                    "parenthesizedExpression": true
                                  }
                                },
                                "parenthesizedExpression": true
                              },
                              "operator": "<",
                              "right": {
                                "type": "BinaryExpression",
                                "start": 19330,
                                "end": 19347,
                                "loc": {
                                  "start": {
                                    "line": 456,
                                    "column": 90
                                  },
                                  "end": {
                                    "line": 456,
                                    "column": 107
                                  }
                                },
                                "left": {
                                  "type": "Identifier",
                                  "start": 19330,
                                  "end": 19338,
                                  "loc": {
                                    "start": {
                                      "line": 456,
                                      "column": 90
                                    },
                                    "end": {
                                      "line": 456,
                                      "column": 98
                                    }
                                  },
                                  "name": "distance"
                                },
                                "operator": "*",
                                "right": {
                                  "type": "Identifier",
                                  "start": 19339,
                                  "end": 19347,
                                  "loc": {
                                    "start": {
                                      "line": 456,
                                      "column": 99
                                    },
                                    "end": {
                                      "line": 456,
                                      "column": 107
                                    }
                                  },
                                  "name": "distance"
                                }
                              }
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 19349,
                              "end": 19470,
                              "loc": {
                                "start": {
                                  "line": 456,
                                  "column": 109
                                },
                                "end": {
                                  "line": 460,
                                  "column": 13
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 19367,
                                  "end": 19386,
                                  "loc": {
                                    "start": {
                                      "line": 457,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 457,
                                      "column": 35
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 19367,
                                    "end": 19385,
                                    "loc": {
                                      "start": {
                                        "line": 457,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 457,
                                        "column": 34
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 19367,
                                      "end": 19381,
                                      "loc": {
                                        "start": {
                                          "line": 457,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 457,
                                          "column": 30
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 19367,
                                        "end": 19379,
                                        "loc": {
                                          "start": {
                                            "line": 457,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 457,
                                            "column": 28
                                          }
                                        },
                                        "name": "closestPoint"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 19380,
                                        "end": 19381,
                                        "loc": {
                                          "start": {
                                            "line": 457,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 457,
                                            "column": 30
                                          }
                                        },
                                        "name": "x"
                                      },
                                      "computed": false
                                    },
                                    "right": {
                                      "type": "Identifier",
                                      "start": 19384,
                                      "end": 19385,
                                      "loc": {
                                        "start": {
                                          "line": 457,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 457,
                                          "column": 34
                                        }
                                      },
                                      "name": "x"
                                    }
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 19403,
                                  "end": 19422,
                                  "loc": {
                                    "start": {
                                      "line": 458,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 458,
                                      "column": 35
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 19403,
                                    "end": 19421,
                                    "loc": {
                                      "start": {
                                        "line": 458,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 458,
                                        "column": 34
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 19403,
                                      "end": 19417,
                                      "loc": {
                                        "start": {
                                          "line": 458,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 458,
                                          "column": 30
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 19403,
                                        "end": 19415,
                                        "loc": {
                                          "start": {
                                            "line": 458,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 458,
                                            "column": 28
                                          }
                                        },
                                        "name": "closestPoint"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 19416,
                                        "end": 19417,
                                        "loc": {
                                          "start": {
                                            "line": 458,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 458,
                                            "column": 30
                                          }
                                        },
                                        "name": "y"
                                      },
                                      "computed": false
                                    },
                                    "right": {
                                      "type": "Identifier",
                                      "start": 19420,
                                      "end": 19421,
                                      "loc": {
                                        "start": {
                                          "line": 458,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 458,
                                          "column": 34
                                        }
                                      },
                                      "name": "y"
                                    }
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 19439,
                                  "end": 19456,
                                  "loc": {
                                    "start": {
                                      "line": 459,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 459,
                                      "column": 33
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 19439,
                                    "end": 19455,
                                    "loc": {
                                      "start": {
                                        "line": 459,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 459,
                                        "column": 32
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "Identifier",
                                      "start": 19439,
                                      "end": 19448,
                                      "loc": {
                                        "start": {
                                          "line": 459,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 459,
                                          "column": 25
                                        }
                                      },
                                      "name": "isSnapped"
                                    },
                                    "right": {
                                      "type": "Literal",
                                      "start": 19451,
                                      "end": 19455,
                                      "loc": {
                                        "start": {
                                          "line": 459,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 459,
                                          "column": 32
                                        }
                                      },
                                      "value": true,
                                      "rawValue": true,
                                      "raw": "true"
                                    }
                                  }
                                }
                              ]
                            },
                            "alternate": null
                          }
                        ]
                      },
                      "alternate": null
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 19490,
                      "end": 19648,
                      "loc": {
                        "start": {
                          "line": 463,
                          "column": 8
                        },
                        "end": {
                          "line": 467,
                          "column": 10
                        }
                      },
                      "argument": {
                        "type": "ObjectExpression",
                        "start": 19497,
                        "end": 19647,
                        "loc": {
                          "start": {
                            "line": 463,
                            "column": 15
                          },
                          "end": {
                            "line": 467,
                            "column": 9
                          }
                        },
                        "properties": [
                          {
                            "type": "Property",
                            "start": 19511,
                            "end": 19540,
                            "loc": {
                              "start": {
                                "line": 464,
                                "column": 12
                              },
                              "end": {
                                "line": 464,
                                "column": 41
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 19511,
                              "end": 19526,
                              "loc": {
                                "start": {
                                  "line": 464,
                                  "column": 12
                                },
                                "end": {
                                  "line": 464,
                                  "column": 27
                                }
                              },
                              "name": "snappedPosition"
                            },
                            "value": {
                              "type": "Identifier",
                              "start": 19528,
                              "end": 19540,
                              "loc": {
                                "start": {
                                  "line": 464,
                                  "column": 29
                                },
                                "end": {
                                  "line": 464,
                                  "column": 41
                                }
                              },
                              "name": "closestPoint"
                            },
                            "kind": "init"
                          },
                          {
                            "type": "Property",
                            "start": 19554,
                            "end": 19603,
                            "loc": {
                              "start": {
                                "line": 465,
                                "column": 12
                              },
                              "end": {
                                "line": 465,
                                "column": 61
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 19554,
                              "end": 19567,
                              "loc": {
                                "start": {
                                  "line": 465,
                                  "column": 12
                                },
                                "end": {
                                  "line": 465,
                                  "column": 25
                                }
                              },
                              "name": "snappingShift"
                            },
                            "value": {
                              "type": "CallExpression",
                              "start": 19569,
                              "end": 19603,
                              "loc": {
                                "start": {
                                  "line": 465,
                                  "column": 27
                                },
                                "end": {
                                  "line": 465,
                                  "column": 61
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 19569,
                                "end": 19593,
                                "loc": {
                                  "start": {
                                    "line": 465,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 465,
                                    "column": 51
                                  }
                                },
                                "object": {
                                  "type": "CallExpression",
                                  "start": 19569,
                                  "end": 19589,
                                  "loc": {
                                    "start": {
                                      "line": 465,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 465,
                                      "column": 47
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 19569,
                                    "end": 19587,
                                    "loc": {
                                      "start": {
                                        "line": 465,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 465,
                                        "column": 45
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 19569,
                                      "end": 19581,
                                      "loc": {
                                        "start": {
                                          "line": 465,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 465,
                                          "column": 39
                                        }
                                      },
                                      "name": "closestPoint"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 19582,
                                      "end": 19587,
                                      "loc": {
                                        "start": {
                                          "line": 465,
                                          "column": 40
                                        },
                                        "end": {
                                          "line": 465,
                                          "column": 45
                                        }
                                      },
                                      "name": "clone"
                                    },
                                    "computed": false
                                  },
                                  "arguments": []
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 19590,
                                  "end": 19593,
                                  "loc": {
                                    "start": {
                                      "line": 465,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 465,
                                      "column": 51
                                    }
                                  },
                                  "name": "sub"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 19594,
                                  "end": 19602,
                                  "loc": {
                                    "start": {
                                      "line": 465,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 465,
                                      "column": 60
                                    }
                                  },
                                  "name": "newPoint"
                                }
                              ]
                            },
                            "kind": "init"
                          },
                          {
                            "type": "Property",
                            "start": 19617,
                            "end": 19637,
                            "loc": {
                              "start": {
                                "line": 466,
                                "column": 12
                              },
                              "end": {
                                "line": 466,
                                "column": 32
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 19617,
                              "end": 19626,
                              "loc": {
                                "start": {
                                  "line": 466,
                                  "column": 12
                                },
                                "end": {
                                  "line": 466,
                                  "column": 21
                                }
                              },
                              "name": "isSnapped"
                            },
                            "value": {
                              "type": "Identifier",
                              "start": 19628,
                              "end": 19637,
                              "loc": {
                                "start": {
                                  "line": 466,
                                  "column": 23
                                },
                                "end": {
                                  "line": 466,
                                  "column": 32
                                }
                              },
                              "name": "isSnapped"
                            },
                            "kind": "init"
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 19660,
              "end": 20266,
              "loc": {
                "start": {
                  "line": 470,
                  "column": 4
                },
                "end": {
                  "line": 479,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 19660,
                "end": 19679,
                "loc": {
                  "start": {
                    "line": 470,
                    "column": 4
                  },
                  "end": {
                    "line": 470,
                    "column": 23
                  }
                },
                "name": "getClosestSnapPoint"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 19679,
                "end": 20266,
                "loc": {
                  "start": {
                    "line": 470,
                    "column": 23
                  },
                  "end": {
                    "line": 479,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 19680,
                    "end": 19688,
                    "loc": {
                      "start": {
                        "line": 470,
                        "column": 24
                      },
                      "end": {
                        "line": 470,
                        "column": 32
                      }
                    },
                    "name": "position"
                  },
                  {
                    "type": "Identifier",
                    "start": 19690,
                    "end": 19701,
                    "loc": {
                      "start": {
                        "line": 470,
                        "column": 34
                      },
                      "end": {
                        "line": 470,
                        "column": 45
                      }
                    },
                    "name": "maxDistance"
                  },
                  {
                    "type": "Identifier",
                    "start": 19703,
                    "end": 19715,
                    "loc": {
                      "start": {
                        "line": 470,
                        "column": 47
                      },
                      "end": {
                        "line": 470,
                        "column": 59
                      }
                    },
                    "name": "ignoreFilter"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 19717,
                  "end": 20266,
                  "loc": {
                    "start": {
                      "line": 470,
                      "column": 61
                    },
                    "end": {
                      "line": 479,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 19727,
                      "end": 19759,
                      "loc": {
                        "start": {
                          "line": 471,
                          "column": 8
                        },
                        "end": {
                          "line": 471,
                          "column": 40
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 19731,
                          "end": 19758,
                          "loc": {
                            "start": {
                              "line": 471,
                              "column": 12
                            },
                            "end": {
                              "line": 471,
                              "column": 39
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 19731,
                            "end": 19739,
                            "loc": {
                              "start": {
                                "line": 471,
                                "column": 12
                              },
                              "end": {
                                "line": 471,
                                "column": 20
                              }
                            },
                            "name": "toReturn"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 19742,
                            "end": 19758,
                            "loc": {
                              "start": {
                                "line": 471,
                                "column": 23
                              },
                              "end": {
                                "line": 471,
                                "column": 39
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 19742,
                              "end": 19756,
                              "loc": {
                                "start": {
                                  "line": 471,
                                  "column": 23
                                },
                                "end": {
                                  "line": 471,
                                  "column": 37
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 19742,
                                "end": 19750,
                                "loc": {
                                  "start": {
                                    "line": 471,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 471,
                                    "column": 31
                                  }
                                },
                                "name": "position"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 19751,
                                "end": 19756,
                                "loc": {
                                  "start": {
                                    "line": 471,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 471,
                                    "column": 37
                                  }
                                },
                                "name": "clone"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 19768,
                      "end": 19853,
                      "loc": {
                        "start": {
                          "line": 472,
                          "column": 8
                        },
                        "end": {
                          "line": 472,
                          "column": 93
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 19772,
                          "end": 19852,
                          "loc": {
                            "start": {
                              "line": 472,
                              "column": 12
                            },
                            "end": {
                              "line": 472,
                              "column": 92
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 19772,
                            "end": 19788,
                            "loc": {
                              "start": {
                                "line": 472,
                                "column": 12
                              },
                              "end": {
                                "line": 472,
                                "column": 28
                              }
                            },
                            "name": "gridClosestPoint"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 19791,
                            "end": 19852,
                            "loc": {
                              "start": {
                                "line": 472,
                                "column": 31
                              },
                              "end": {
                                "line": 472,
                                "column": 92
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 19791,
                              "end": 19815,
                              "loc": {
                                "start": {
                                  "line": 472,
                                  "column": 31
                                },
                                "end": {
                                  "line": 472,
                                  "column": 55
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 19791,
                                "end": 19795,
                                "loc": {
                                  "start": {
                                    "line": 472,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 472,
                                    "column": 35
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 19796,
                                "end": 19815,
                                "loc": {
                                  "start": {
                                    "line": 472,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 472,
                                    "column": 55
                                  }
                                },
                                "name": "getClosestGridPoint"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 19816,
                                "end": 19824,
                                "loc": {
                                  "start": {
                                    "line": 472,
                                    "column": 56
                                  },
                                  "end": {
                                    "line": 472,
                                    "column": 64
                                  }
                                },
                                "name": "toReturn"
                              },
                              {
                                "type": "Identifier",
                                "start": 19826,
                                "end": 19837,
                                "loc": {
                                  "start": {
                                    "line": 472,
                                    "column": 66
                                  },
                                  "end": {
                                    "line": 472,
                                    "column": 77
                                  }
                                },
                                "name": "maxDistance"
                              },
                              {
                                "type": "Identifier",
                                "start": 19839,
                                "end": 19851,
                                "loc": {
                                  "start": {
                                    "line": 472,
                                    "column": 79
                                  },
                                  "end": {
                                    "line": 472,
                                    "column": 91
                                  }
                                },
                                "name": "ignoreFilter"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 19862,
                      "end": 19947,
                      "loc": {
                        "start": {
                          "line": 473,
                          "column": 8
                        },
                        "end": {
                          "line": 473,
                          "column": 93
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 19866,
                          "end": 19946,
                          "loc": {
                            "start": {
                              "line": 473,
                              "column": 12
                            },
                            "end": {
                              "line": 473,
                              "column": 92
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 19866,
                            "end": 19882,
                            "loc": {
                              "start": {
                                "line": 473,
                                "column": 12
                              },
                              "end": {
                                "line": 473,
                                "column": 28
                              }
                            },
                            "name": "geomClosestPoint"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 19885,
                            "end": 19946,
                            "loc": {
                              "start": {
                                "line": 473,
                                "column": 31
                              },
                              "end": {
                                "line": 473,
                                "column": 92
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 19885,
                              "end": 19909,
                              "loc": {
                                "start": {
                                  "line": 473,
                                  "column": 31
                                },
                                "end": {
                                  "line": 473,
                                  "column": 55
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 19885,
                                "end": 19889,
                                "loc": {
                                  "start": {
                                    "line": 473,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 473,
                                    "column": 35
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 19890,
                                "end": 19909,
                                "loc": {
                                  "start": {
                                    "line": 473,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 473,
                                    "column": 55
                                  }
                                },
                                "name": "getClosestGeomPoint"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 19910,
                                "end": 19918,
                                "loc": {
                                  "start": {
                                    "line": 473,
                                    "column": 56
                                  },
                                  "end": {
                                    "line": 473,
                                    "column": 64
                                  }
                                },
                                "name": "toReturn"
                              },
                              {
                                "type": "Identifier",
                                "start": 19920,
                                "end": 19931,
                                "loc": {
                                  "start": {
                                    "line": 473,
                                    "column": 66
                                  },
                                  "end": {
                                    "line": 473,
                                    "column": 77
                                  }
                                },
                                "name": "maxDistance"
                              },
                              {
                                "type": "Identifier",
                                "start": 19933,
                                "end": 19945,
                                "loc": {
                                  "start": {
                                    "line": 473,
                                    "column": 79
                                  },
                                  "end": {
                                    "line": 473,
                                    "column": 91
                                  }
                                },
                                "name": "ignoreFilter"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 19957,
                      "end": 20260,
                      "loc": {
                        "start": {
                          "line": 475,
                          "column": 8
                        },
                        "end": {
                          "line": 478,
                          "column": 86
                        }
                      },
                      "test": {
                        "type": "LogicalExpression",
                        "start": 19961,
                        "end": 20017,
                        "loc": {
                          "start": {
                            "line": 475,
                            "column": 12
                          },
                          "end": {
                            "line": 475,
                            "column": 68
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 19961,
                          "end": 19987,
                          "loc": {
                            "start": {
                              "line": 475,
                              "column": 12
                            },
                            "end": {
                              "line": 475,
                              "column": 38
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 19961,
                            "end": 19977,
                            "loc": {
                              "start": {
                                "line": 475,
                                "column": 12
                              },
                              "end": {
                                "line": 475,
                                "column": 28
                              }
                            },
                            "name": "geomClosestPoint"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 19978,
                            "end": 19987,
                            "loc": {
                              "start": {
                                "line": 475,
                                "column": 29
                              },
                              "end": {
                                "line": 475,
                                "column": 38
                              }
                            },
                            "name": "isSnapped"
                          },
                          "computed": false
                        },
                        "operator": "&&",
                        "right": {
                          "type": "MemberExpression",
                          "start": 19991,
                          "end": 20017,
                          "loc": {
                            "start": {
                              "line": 475,
                              "column": 42
                            },
                            "end": {
                              "line": 475,
                              "column": 68
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 19991,
                            "end": 20007,
                            "loc": {
                              "start": {
                                "line": 475,
                                "column": 42
                              },
                              "end": {
                                "line": 475,
                                "column": 58
                              }
                            },
                            "name": "gridClosestPoint"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 20008,
                            "end": 20017,
                            "loc": {
                              "start": {
                                "line": 475,
                                "column": 59
                              },
                              "end": {
                                "line": 475,
                                "column": 68
                              }
                            },
                            "name": "isSnapped"
                          },
                          "computed": false
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 20031,
                        "end": 20160,
                        "loc": {
                          "start": {
                            "line": 476,
                            "column": 12
                          },
                          "end": {
                            "line": 476,
                            "column": 141
                          }
                        },
                        "argument": {
                          "type": "ConditionalExpression",
                          "start": 20038,
                          "end": 20159,
                          "loc": {
                            "start": {
                              "line": 476,
                              "column": 19
                            },
                            "end": {
                              "line": 476,
                              "column": 140
                            }
                          },
                          "test": {
                            "type": "BinaryExpression",
                            "start": 20038,
                            "end": 20119,
                            "loc": {
                              "start": {
                                "line": 476,
                                "column": 19
                              },
                              "end": {
                                "line": 476,
                                "column": 100
                              }
                            },
                            "left": {
                              "type": "CallExpression",
                              "start": 20038,
                              "end": 20077,
                              "loc": {
                                "start": {
                                  "line": 476,
                                  "column": 19
                                },
                                "end": {
                                  "line": 476,
                                  "column": 58
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 20038,
                                "end": 20075,
                                "loc": {
                                  "start": {
                                    "line": 476,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 476,
                                    "column": 56
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 20038,
                                  "end": 20068,
                                  "loc": {
                                    "start": {
                                      "line": 476,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 476,
                                      "column": 49
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 20038,
                                    "end": 20054,
                                    "loc": {
                                      "start": {
                                        "line": 476,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 476,
                                        "column": 35
                                      }
                                    },
                                    "name": "geomClosestPoint"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 20055,
                                    "end": 20068,
                                    "loc": {
                                      "start": {
                                        "line": 476,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 476,
                                        "column": 49
                                      }
                                    },
                                    "name": "snappingShift"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 20069,
                                  "end": 20075,
                                  "loc": {
                                    "start": {
                                      "line": 476,
                                      "column": 50
                                    },
                                    "end": {
                                      "line": 476,
                                      "column": 56
                                    }
                                  },
                                  "name": "length"
                                },
                                "computed": false
                              },
                              "arguments": []
                            },
                            "operator": "<",
                            "right": {
                              "type": "CallExpression",
                              "start": 20080,
                              "end": 20119,
                              "loc": {
                                "start": {
                                  "line": 476,
                                  "column": 61
                                },
                                "end": {
                                  "line": 476,
                                  "column": 100
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 20080,
                                "end": 20117,
                                "loc": {
                                  "start": {
                                    "line": 476,
                                    "column": 61
                                  },
                                  "end": {
                                    "line": 476,
                                    "column": 98
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 20080,
                                  "end": 20110,
                                  "loc": {
                                    "start": {
                                      "line": 476,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 476,
                                      "column": 91
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 20080,
                                    "end": 20096,
                                    "loc": {
                                      "start": {
                                        "line": 476,
                                        "column": 61
                                      },
                                      "end": {
                                        "line": 476,
                                        "column": 77
                                      }
                                    },
                                    "name": "gridClosestPoint"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 20097,
                                    "end": 20110,
                                    "loc": {
                                      "start": {
                                        "line": 476,
                                        "column": 78
                                      },
                                      "end": {
                                        "line": 476,
                                        "column": 91
                                      }
                                    },
                                    "name": "snappingShift"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 20111,
                                  "end": 20117,
                                  "loc": {
                                    "start": {
                                      "line": 476,
                                      "column": 92
                                    },
                                    "end": {
                                      "line": 476,
                                      "column": 98
                                    }
                                  },
                                  "name": "length"
                                },
                                "computed": false
                              },
                              "arguments": []
                            }
                          },
                          "consequent": {
                            "type": "Identifier",
                            "start": 20123,
                            "end": 20139,
                            "loc": {
                              "start": {
                                "line": 476,
                                "column": 104
                              },
                              "end": {
                                "line": 476,
                                "column": 120
                              }
                            },
                            "name": "geomClosestPoint"
                          },
                          "alternate": {
                            "type": "Identifier",
                            "start": 20143,
                            "end": 20159,
                            "loc": {
                              "start": {
                                "line": 476,
                                "column": 124
                              },
                              "end": {
                                "line": 476,
                                "column": 140
                              }
                            },
                            "name": "gridClosestPoint"
                          }
                        }
                      },
                      "alternate": {
                        "type": "ReturnStatement",
                        "start": 20186,
                        "end": 20260,
                        "loc": {
                          "start": {
                            "line": 478,
                            "column": 12
                          },
                          "end": {
                            "line": 478,
                            "column": 86
                          }
                        },
                        "argument": {
                          "type": "ConditionalExpression",
                          "start": 20193,
                          "end": 20259,
                          "loc": {
                            "start": {
                              "line": 478,
                              "column": 19
                            },
                            "end": {
                              "line": 478,
                              "column": 85
                            }
                          },
                          "test": {
                            "type": "MemberExpression",
                            "start": 20193,
                            "end": 20219,
                            "loc": {
                              "start": {
                                "line": 478,
                                "column": 19
                              },
                              "end": {
                                "line": 478,
                                "column": 45
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 20193,
                              "end": 20209,
                              "loc": {
                                "start": {
                                  "line": 478,
                                  "column": 19
                                },
                                "end": {
                                  "line": 478,
                                  "column": 35
                                }
                              },
                              "name": "geomClosestPoint"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 20210,
                              "end": 20219,
                              "loc": {
                                "start": {
                                  "line": 478,
                                  "column": 36
                                },
                                "end": {
                                  "line": 478,
                                  "column": 45
                                }
                              },
                              "name": "isSnapped"
                            },
                            "computed": false
                          },
                          "consequent": {
                            "type": "Identifier",
                            "start": 20223,
                            "end": 20239,
                            "loc": {
                              "start": {
                                "line": 478,
                                "column": 49
                              },
                              "end": {
                                "line": 478,
                                "column": 65
                              }
                            },
                            "name": "geomClosestPoint"
                          },
                          "alternate": {
                            "type": "Identifier",
                            "start": 20243,
                            "end": 20259,
                            "loc": {
                              "start": {
                                "line": 478,
                                "column": 69
                              },
                              "end": {
                                "line": 478,
                                "column": 85
                              }
                            },
                            "name": "gridClosestPoint"
                          }
                        }
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 20272,
              "end": 23405,
              "loc": {
                "start": {
                  "line": 481,
                  "column": 4
                },
                "end": {
                  "line": 551,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 20272,
                "end": 20291,
                "loc": {
                  "start": {
                    "line": 481,
                    "column": 4
                  },
                  "end": {
                    "line": 481,
                    "column": 23
                  }
                },
                "name": "getSnappedPointWrap"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 20291,
                "end": 23405,
                "loc": {
                  "start": {
                    "line": 481,
                    "column": 23
                  },
                  "end": {
                    "line": 551,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 20292,
                    "end": 20305,
                    "loc": {
                      "start": {
                        "line": 481,
                        "column": 24
                      },
                      "end": {
                        "line": 481,
                        "column": 37
                      }
                    },
                    "name": "mousePosition"
                  },
                  {
                    "type": "Identifier",
                    "start": 20307,
                    "end": 20310,
                    "loc": {
                      "start": {
                        "line": 481,
                        "column": 39
                      },
                      "end": {
                        "line": 481,
                        "column": 42
                      }
                    },
                    "name": "obj"
                  },
                  {
                    "type": "Identifier",
                    "start": 20312,
                    "end": 20325,
                    "loc": {
                      "start": {
                        "line": 481,
                        "column": 44
                      },
                      "end": {
                        "line": 481,
                        "column": 57
                      }
                    },
                    "name": "lastDragPoint"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 20327,
                  "end": 23405,
                  "loc": {
                    "start": {
                      "line": 481,
                      "column": 59
                    },
                    "end": {
                      "line": 551,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 20337,
                      "end": 20368,
                      "loc": {
                        "start": {
                          "line": 482,
                          "column": 8
                        },
                        "end": {
                          "line": 482,
                          "column": 39
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 20341,
                        "end": 20345,
                        "loc": {
                          "start": {
                            "line": 482,
                            "column": 12
                          },
                          "end": {
                            "line": 482,
                            "column": 16
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "Identifier",
                          "start": 20342,
                          "end": 20345,
                          "loc": {
                            "start": {
                              "line": 482,
                              "column": 13
                            },
                            "end": {
                              "line": 482,
                              "column": 16
                            }
                          },
                          "name": "obj"
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 20347,
                        "end": 20368,
                        "loc": {
                          "start": {
                            "line": 482,
                            "column": 18
                          },
                          "end": {
                            "line": 482,
                            "column": 39
                          }
                        },
                        "argument": {
                          "type": "Identifier",
                          "start": 20354,
                          "end": 20367,
                          "loc": {
                            "start": {
                              "line": 482,
                              "column": 25
                            },
                            "end": {
                              "line": 482,
                              "column": 38
                            }
                          },
                          "name": "mousePosition"
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 20378,
                      "end": 20407,
                      "loc": {
                        "start": {
                          "line": 484,
                          "column": 8
                        },
                        "end": {
                          "line": 484,
                          "column": 37
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 20382,
                          "end": 20406,
                          "loc": {
                            "start": {
                              "line": 484,
                              "column": 12
                            },
                            "end": {
                              "line": 484,
                              "column": 36
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 20382,
                            "end": 20390,
                            "loc": {
                              "start": {
                                "line": 484,
                                "column": 12
                              },
                              "end": {
                                "line": 484,
                                "column": 20
                              }
                            },
                            "name": "sketcher"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 20393,
                            "end": 20406,
                            "loc": {
                              "start": {
                                "line": 484,
                                "column": 23
                              },
                              "end": {
                                "line": 484,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 20393,
                              "end": 20397,
                              "loc": {
                                "start": {
                                  "line": 484,
                                  "column": 23
                                },
                                "end": {
                                  "line": 484,
                                  "column": 27
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 20398,
                              "end": 20406,
                              "loc": {
                                "start": {
                                  "line": 484,
                                  "column": 28
                                },
                                "end": {
                                  "line": 484,
                                  "column": 36
                                }
                              },
                              "name": "sketcher"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 20416,
                      "end": 20467,
                      "loc": {
                        "start": {
                          "line": 485,
                          "column": 8
                        },
                        "end": {
                          "line": 485,
                          "column": 59
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 20420,
                          "end": 20466,
                          "loc": {
                            "start": {
                              "line": 485,
                              "column": 12
                            },
                            "end": {
                              "line": 485,
                              "column": 58
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 20420,
                            "end": 20431,
                            "loc": {
                              "start": {
                                "line": 485,
                                "column": 12
                              },
                              "end": {
                                "line": 485,
                                "column": 23
                              }
                            },
                            "name": "maxDistance"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 20434,
                            "end": 20466,
                            "loc": {
                              "start": {
                                "line": 485,
                                "column": 26
                              },
                              "end": {
                                "line": 485,
                                "column": 58
                              }
                            },
                            "left": {
                              "type": "MemberExpression",
                              "start": 20434,
                              "end": 20460,
                              "loc": {
                                "start": {
                                  "line": 485,
                                  "column": 26
                                },
                                "end": {
                                  "line": 485,
                                  "column": 52
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 20434,
                                "end": 20458,
                                "loc": {
                                  "start": {
                                    "line": 485,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 485,
                                    "column": 50
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 20434,
                                  "end": 20452,
                                  "loc": {
                                    "start": {
                                      "line": 485,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 485,
                                      "column": 44
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 20434,
                                    "end": 20447,
                                    "loc": {
                                      "start": {
                                        "line": 485,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 485,
                                        "column": 39
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 20434,
                                      "end": 20444,
                                      "loc": {
                                        "start": {
                                          "line": 485,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 485,
                                          "column": 36
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 20434,
                                        "end": 20437,
                                        "loc": {
                                          "start": {
                                            "line": 485,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 485,
                                            "column": 29
                                          }
                                        },
                                        "name": "obj"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 20438,
                                        "end": 20444,
                                        "loc": {
                                          "start": {
                                            "line": 485,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 485,
                                            "column": 36
                                          }
                                        },
                                        "name": "points"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Literal",
                                      "start": 20445,
                                      "end": 20446,
                                      "loc": {
                                        "start": {
                                          "line": 485,
                                          "column": 37
                                        },
                                        "end": {
                                          "line": 485,
                                          "column": 38
                                        }
                                      },
                                      "value": 0,
                                      "rawValue": 0,
                                      "raw": "0"
                                    },
                                    "computed": true
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 20448,
                                    "end": 20452,
                                    "loc": {
                                      "start": {
                                        "line": 485,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 485,
                                        "column": 44
                                      }
                                    },
                                    "name": "mesh"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 20453,
                                  "end": 20458,
                                  "loc": {
                                    "start": {
                                      "line": 485,
                                      "column": 45
                                    },
                                    "end": {
                                      "line": 485,
                                      "column": 50
                                    }
                                  },
                                  "name": "scale"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 20459,
                                "end": 20460,
                                "loc": {
                                  "start": {
                                    "line": 485,
                                    "column": 51
                                  },
                                  "end": {
                                    "line": 485,
                                    "column": 52
                                  }
                                },
                                "name": "x"
                              },
                              "computed": false
                            },
                            "operator": "*",
                            "right": {
                              "type": "Literal",
                              "start": 20463,
                              "end": 20466,
                              "loc": {
                                "start": {
                                  "line": 485,
                                  "column": 55
                                },
                                "end": {
                                  "line": 485,
                                  "column": 58
                                }
                              },
                              "value": 1.5,
                              "rawValue": 1.5,
                              "raw": "1.5"
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "FunctionDeclaration",
                      "start": 20477,
                      "end": 21901,
                      "loc": {
                        "start": {
                          "line": 487,
                          "column": 8
                        },
                        "end": {
                          "line": 517,
                          "column": 9
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 20486,
                        "end": 20501,
                        "loc": {
                          "start": {
                            "line": 487,
                            "column": 17
                          },
                          "end": {
                            "line": 487,
                            "column": 32
                          }
                        },
                        "name": "snapToDirection"
                      },
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [],
                      "body": {
                        "type": "BlockStatement",
                        "start": 20504,
                        "end": 21901,
                        "loc": {
                          "start": {
                            "line": 487,
                            "column": 35
                          },
                          "end": {
                            "line": 517,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 20518,
                            "end": 20555,
                            "loc": {
                              "start": {
                                "line": 488,
                                "column": 12
                              },
                              "end": {
                                "line": 488,
                                "column": 49
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 20522,
                                "end": 20554,
                                "loc": {
                                  "start": {
                                    "line": 488,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 488,
                                    "column": 48
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 20522,
                                  "end": 20530,
                                  "loc": {
                                    "start": {
                                      "line": 488,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 488,
                                      "column": 24
                                    }
                                  },
                                  "name": "toReturn"
                                },
                                "init": {
                                  "type": "CallExpression",
                                  "start": 20533,
                                  "end": 20554,
                                  "loc": {
                                    "start": {
                                      "line": 488,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 488,
                                      "column": 48
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 20533,
                                    "end": 20552,
                                    "loc": {
                                      "start": {
                                        "line": 488,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 488,
                                        "column": 46
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 20533,
                                      "end": 20546,
                                      "loc": {
                                        "start": {
                                          "line": 488,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 488,
                                          "column": 40
                                        }
                                      },
                                      "name": "mousePosition"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 20547,
                                      "end": 20552,
                                      "loc": {
                                        "start": {
                                          "line": 488,
                                          "column": 41
                                        },
                                        "end": {
                                          "line": 488,
                                          "column": 46
                                        }
                                      },
                                      "name": "clone"
                                    },
                                    "computed": false
                                  },
                                  "arguments": []
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 20569,
                            "end": 20591,
                            "loc": {
                              "start": {
                                "line": 490,
                                "column": 12
                              },
                              "end": {
                                "line": 490,
                                "column": 34
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 20573,
                                "end": 20590,
                                "loc": {
                                  "start": {
                                    "line": 490,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 490,
                                    "column": 33
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 20573,
                                  "end": 20577,
                                  "loc": {
                                    "start": {
                                      "line": 490,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 490,
                                      "column": 20
                                    }
                                  },
                                  "name": "line"
                                },
                                "init": {
                                  "type": "MemberExpression",
                                  "start": 20580,
                                  "end": 20590,
                                  "loc": {
                                    "start": {
                                      "line": 490,
                                      "column": 23
                                    },
                                    "end": {
                                      "line": 490,
                                      "column": 33
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 20580,
                                    "end": 20583,
                                    "loc": {
                                      "start": {
                                        "line": 490,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 490,
                                        "column": 26
                                      }
                                    },
                                    "name": "obj"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 20584,
                                    "end": 20590,
                                    "loc": {
                                      "start": {
                                        "line": 490,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 490,
                                        "column": 33
                                      }
                                    },
                                    "name": "parent"
                                  },
                                  "computed": false
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 20604,
                            "end": 20645,
                            "loc": {
                              "start": {
                                "line": 491,
                                "column": 12
                              },
                              "end": {
                                "line": 491,
                                "column": 53
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 20608,
                                "end": 20643,
                                "loc": {
                                  "start": {
                                    "line": 491,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 491,
                                    "column": 51
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 20608,
                                  "end": 20611,
                                  "loc": {
                                    "start": {
                                      "line": 491,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 491,
                                      "column": 19
                                    }
                                  },
                                  "name": "idx"
                                },
                                "init": {
                                  "type": "ConditionalExpression",
                                  "start": 20614,
                                  "end": 20643,
                                  "loc": {
                                    "start": {
                                      "line": 491,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 491,
                                      "column": 51
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 20614,
                                    "end": 20635,
                                    "loc": {
                                      "start": {
                                        "line": 491,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 491,
                                        "column": 43
                                      }
                                    },
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 20614,
                                      "end": 20628,
                                      "loc": {
                                        "start": {
                                          "line": 491,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 491,
                                          "column": 36
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 20614,
                                        "end": 20625,
                                        "loc": {
                                          "start": {
                                            "line": 491,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 491,
                                            "column": 33
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 20614,
                                          "end": 20618,
                                          "loc": {
                                            "start": {
                                              "line": 491,
                                              "column": 22
                                            },
                                            "end": {
                                              "line": 491,
                                              "column": 26
                                            }
                                          },
                                          "name": "line"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 20619,
                                          "end": 20625,
                                          "loc": {
                                            "start": {
                                              "line": 491,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 491,
                                              "column": 33
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 20626,
                                        "end": 20627,
                                        "loc": {
                                          "start": {
                                            "line": 491,
                                            "column": 34
                                          },
                                          "end": {
                                            "line": 491,
                                            "column": 35
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      "computed": true
                                    },
                                    "operator": "==",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 20632,
                                      "end": 20635,
                                      "loc": {
                                        "start": {
                                          "line": 491,
                                          "column": 40
                                        },
                                        "end": {
                                          "line": 491,
                                          "column": 43
                                        }
                                      },
                                      "name": "obj"
                                    }
                                  },
                                  "consequent": {
                                    "type": "Literal",
                                    "start": 20638,
                                    "end": 20639,
                                    "loc": {
                                      "start": {
                                        "line": 491,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 491,
                                        "column": 47
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "alternate": {
                                    "type": "Literal",
                                    "start": 20642,
                                    "end": 20643,
                                    "loc": {
                                      "start": {
                                        "line": 491,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 491,
                                        "column": 51
                                      }
                                    },
                                    "value": 1,
                                    "rawValue": 1,
                                    "raw": "1"
                                  }
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 20658,
                            "end": 20709,
                            "loc": {
                              "start": {
                                "line": 492,
                                "column": 12
                              },
                              "end": {
                                "line": 492,
                                "column": 63
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 20662,
                                "end": 20708,
                                "loc": {
                                  "start": {
                                    "line": 492,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 492,
                                    "column": 62
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 20662,
                                  "end": 20676,
                                  "loc": {
                                    "start": {
                                      "line": 492,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 492,
                                      "column": 30
                                    }
                                  },
                                  "name": "neighbourPoint"
                                },
                                "init": {
                                  "type": "MemberExpression",
                                  "start": 20679,
                                  "end": 20708,
                                  "loc": {
                                    "start": {
                                      "line": 492,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 492,
                                      "column": 62
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 20679,
                                    "end": 20699,
                                    "loc": {
                                      "start": {
                                        "line": 492,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 492,
                                        "column": 53
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 20679,
                                      "end": 20690,
                                      "loc": {
                                        "start": {
                                          "line": 492,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 492,
                                          "column": 44
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 20679,
                                        "end": 20683,
                                        "loc": {
                                          "start": {
                                            "line": 492,
                                            "column": 33
                                          },
                                          "end": {
                                            "line": 492,
                                            "column": 37
                                          }
                                        },
                                        "name": "line"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 20684,
                                        "end": 20690,
                                        "loc": {
                                          "start": {
                                            "line": 492,
                                            "column": 38
                                          },
                                          "end": {
                                            "line": 492,
                                            "column": 44
                                          }
                                        },
                                        "name": "points"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "BinaryExpression",
                                      "start": 20691,
                                      "end": 20698,
                                      "loc": {
                                        "start": {
                                          "line": 492,
                                          "column": 45
                                        },
                                        "end": {
                                          "line": 492,
                                          "column": 52
                                        }
                                      },
                                      "left": {
                                        "type": "Literal",
                                        "start": 20691,
                                        "end": 20692,
                                        "loc": {
                                          "start": {
                                            "line": 492,
                                            "column": 45
                                          },
                                          "end": {
                                            "line": 492,
                                            "column": 46
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      },
                                      "operator": "-",
                                      "right": {
                                        "type": "Identifier",
                                        "start": 20695,
                                        "end": 20698,
                                        "loc": {
                                          "start": {
                                            "line": 492,
                                            "column": 49
                                          },
                                          "end": {
                                            "line": 492,
                                            "column": 52
                                          }
                                        },
                                        "name": "idx"
                                      }
                                    },
                                    "computed": true
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 20700,
                                    "end": 20708,
                                    "loc": {
                                      "start": {
                                        "line": 492,
                                        "column": 54
                                      },
                                      "end": {
                                        "line": 492,
                                        "column": 62
                                      }
                                    },
                                    "name": "position"
                                  },
                                  "computed": false
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 20723,
                            "end": 20755,
                            "loc": {
                              "start": {
                                "line": 494,
                                "column": 12
                              },
                              "end": {
                                "line": 494,
                                "column": 44
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 20727,
                                "end": 20754,
                                "loc": {
                                  "start": {
                                    "line": 494,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 494,
                                    "column": 43
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 20727,
                                  "end": 20732,
                                  "loc": {
                                    "start": {
                                      "line": 494,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 494,
                                      "column": 21
                                    }
                                  },
                                  "name": "delta"
                                },
                                "init": {
                                  "type": "NewExpression",
                                  "start": 20735,
                                  "end": 20754,
                                  "loc": {
                                    "start": {
                                      "line": 494,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 494,
                                      "column": 43
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 20739,
                                    "end": 20752,
                                    "loc": {
                                      "start": {
                                        "line": 494,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 494,
                                        "column": 41
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 20739,
                                      "end": 20744,
                                      "loc": {
                                        "start": {
                                          "line": 494,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 494,
                                          "column": 33
                                        }
                                      },
                                      "name": "THREE"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 20745,
                                      "end": 20752,
                                      "loc": {
                                        "start": {
                                          "line": 494,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 494,
                                          "column": 41
                                        }
                                      },
                                      "name": "Vector3"
                                    },
                                    "computed": false
                                  },
                                  "arguments": []
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 20768,
                            "end": 20811,
                            "loc": {
                              "start": {
                                "line": 495,
                                "column": 12
                              },
                              "end": {
                                "line": 495,
                                "column": 55
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 20768,
                              "end": 20810,
                              "loc": {
                                "start": {
                                  "line": 495,
                                  "column": 12
                                },
                                "end": {
                                  "line": 495,
                                  "column": 54
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 20768,
                                "end": 20784,
                                "loc": {
                                  "start": {
                                    "line": 495,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 495,
                                    "column": 28
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 20768,
                                  "end": 20773,
                                  "loc": {
                                    "start": {
                                      "line": 495,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 495,
                                      "column": 17
                                    }
                                  },
                                  "name": "delta"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 20774,
                                  "end": 20784,
                                  "loc": {
                                    "start": {
                                      "line": 495,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 495,
                                      "column": 28
                                    }
                                  },
                                  "name": "subVectors"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 20785,
                                  "end": 20793,
                                  "loc": {
                                    "start": {
                                      "line": 495,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 495,
                                      "column": 37
                                    }
                                  },
                                  "name": "toReturn"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 20795,
                                  "end": 20809,
                                  "loc": {
                                    "start": {
                                      "line": 495,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 495,
                                      "column": 53
                                    }
                                  },
                                  "name": "neighbourPoint"
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 20824,
                            "end": 20838,
                            "loc": {
                              "start": {
                                "line": 496,
                                "column": 12
                              },
                              "end": {
                                "line": 496,
                                "column": 26
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 20824,
                              "end": 20837,
                              "loc": {
                                "start": {
                                  "line": 496,
                                  "column": 12
                                },
                                "end": {
                                  "line": 496,
                                  "column": 25
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 20824,
                                "end": 20831,
                                "loc": {
                                  "start": {
                                    "line": 496,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 496,
                                    "column": 19
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 20824,
                                  "end": 20829,
                                  "loc": {
                                    "start": {
                                      "line": 496,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 496,
                                      "column": 17
                                    }
                                  },
                                  "name": "delta"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 20830,
                                  "end": 20831,
                                  "loc": {
                                    "start": {
                                      "line": 496,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 496,
                                      "column": 19
                                    }
                                  },
                                  "name": "z"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "Literal",
                                "start": 20834,
                                "end": 20837,
                                "loc": {
                                  "start": {
                                    "line": 496,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 496,
                                    "column": 25
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0.0"
                              }
                            }
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 20852,
                            "end": 20877,
                            "loc": {
                              "start": {
                                "line": 498,
                                "column": 12
                              },
                              "end": {
                                "line": 498,
                                "column": 37
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 20856,
                                "end": 20876,
                                "loc": {
                                  "start": {
                                    "line": 498,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 498,
                                    "column": 36
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 20856,
                                  "end": 20859,
                                  "loc": {
                                    "start": {
                                      "line": 498,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 498,
                                      "column": 19
                                    }
                                  },
                                  "name": "len"
                                },
                                "init": {
                                  "type": "CallExpression",
                                  "start": 20862,
                                  "end": 20876,
                                  "loc": {
                                    "start": {
                                      "line": 498,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 498,
                                      "column": 36
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 20862,
                                    "end": 20874,
                                    "loc": {
                                      "start": {
                                        "line": 498,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 498,
                                        "column": 34
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 20862,
                                      "end": 20867,
                                      "loc": {
                                        "start": {
                                          "line": 498,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 498,
                                          "column": 27
                                        }
                                      },
                                      "name": "delta"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 20868,
                                      "end": 20874,
                                      "loc": {
                                        "start": {
                                          "line": 498,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 498,
                                          "column": 34
                                        }
                                      },
                                      "name": "length"
                                    },
                                    "computed": false
                                  },
                                  "arguments": []
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "IfStatement",
                            "start": 20890,
                            "end": 21861,
                            "loc": {
                              "start": {
                                "line": 499,
                                "column": 12
                              },
                              "end": {
                                "line": 514,
                                "column": 13
                              }
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 20894,
                              "end": 20905,
                              "loc": {
                                "start": {
                                  "line": 499,
                                  "column": 16
                                },
                                "end": {
                                  "line": 499,
                                  "column": 27
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 20894,
                                "end": 20897,
                                "loc": {
                                  "start": {
                                    "line": 499,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 499,
                                    "column": 19
                                  }
                                },
                                "name": "len"
                              },
                              "operator": ">",
                              "right": {
                                "type": "Literal",
                                "start": 20900,
                                "end": 20905,
                                "loc": {
                                  "start": {
                                    "line": 499,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 499,
                                    "column": 27
                                  }
                                },
                                "value": 0.001,
                                "rawValue": 0.001,
                                "raw": "0.001"
                              }
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 20907,
                              "end": 21861,
                              "loc": {
                                "start": {
                                  "line": 499,
                                  "column": 29
                                },
                                "end": {
                                  "line": 514,
                                  "column": 13
                                }
                              },
                              "body": [
                                {
                                  "type": "VariableDeclaration",
                                  "start": 20925,
                                  "end": 20967,
                                  "loc": {
                                    "start": {
                                      "line": 500,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 500,
                                      "column": 58
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 20929,
                                      "end": 20966,
                                      "loc": {
                                        "start": {
                                          "line": 500,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 500,
                                          "column": 57
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 20929,
                                        "end": 20931,
                                        "loc": {
                                          "start": {
                                            "line": 500,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 500,
                                            "column": 22
                                          }
                                        },
                                        "name": "oX"
                                      },
                                      "init": {
                                        "type": "NewExpression",
                                        "start": 20934,
                                        "end": 20966,
                                        "loc": {
                                          "start": {
                                            "line": 500,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 500,
                                            "column": 57
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 20938,
                                          "end": 20951,
                                          "loc": {
                                            "start": {
                                              "line": 500,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 500,
                                              "column": 42
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 20938,
                                            "end": 20943,
                                            "loc": {
                                              "start": {
                                                "line": 500,
                                                "column": 29
                                              },
                                              "end": {
                                                "line": 500,
                                                "column": 34
                                              }
                                            },
                                            "name": "THREE"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 20944,
                                            "end": 20951,
                                            "loc": {
                                              "start": {
                                                "line": 500,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 500,
                                                "column": 42
                                              }
                                            },
                                            "name": "Vector3"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Literal",
                                            "start": 20952,
                                            "end": 20955,
                                            "loc": {
                                              "start": {
                                                "line": 500,
                                                "column": 43
                                              },
                                              "end": {
                                                "line": 500,
                                                "column": 46
                                              }
                                            },
                                            "value": 1,
                                            "rawValue": 1,
                                            "raw": "1.0"
                                          },
                                          {
                                            "type": "Literal",
                                            "start": 20957,
                                            "end": 20960,
                                            "loc": {
                                              "start": {
                                                "line": 500,
                                                "column": 48
                                              },
                                              "end": {
                                                "line": 500,
                                                "column": 51
                                              }
                                            },
                                            "value": 0,
                                            "rawValue": 0,
                                            "raw": "0.0"
                                          },
                                          {
                                            "type": "Literal",
                                            "start": 20962,
                                            "end": 20965,
                                            "loc": {
                                              "start": {
                                                "line": 500,
                                                "column": 53
                                              },
                                              "end": {
                                                "line": 500,
                                                "column": 56
                                              }
                                            },
                                            "value": 0,
                                            "rawValue": 0,
                                            "raw": "0.0"
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 20984,
                                  "end": 21023,
                                  "loc": {
                                    "start": {
                                      "line": 501,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 501,
                                      "column": 55
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 20988,
                                      "end": 21022,
                                      "loc": {
                                        "start": {
                                          "line": 501,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 501,
                                          "column": 54
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 20988,
                                        "end": 21002,
                                        "loc": {
                                          "start": {
                                            "line": 501,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 501,
                                            "column": 34
                                          }
                                        },
                                        "name": "angleDeltaToOX"
                                      },
                                      "init": {
                                        "type": "CallExpression",
                                        "start": 21005,
                                        "end": 21022,
                                        "loc": {
                                          "start": {
                                            "line": 501,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 501,
                                            "column": 54
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 21005,
                                          "end": 21018,
                                          "loc": {
                                            "start": {
                                              "line": 501,
                                              "column": 37
                                            },
                                            "end": {
                                              "line": 501,
                                              "column": 50
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 21005,
                                            "end": 21010,
                                            "loc": {
                                              "start": {
                                                "line": 501,
                                                "column": 37
                                              },
                                              "end": {
                                                "line": 501,
                                                "column": 42
                                              }
                                            },
                                            "name": "delta"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 21011,
                                            "end": 21018,
                                            "loc": {
                                              "start": {
                                                "line": 501,
                                                "column": 43
                                              },
                                              "end": {
                                                "line": 501,
                                                "column": 50
                                              }
                                            },
                                            "name": "angleTo"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 21019,
                                            "end": 21021,
                                            "loc": {
                                              "start": {
                                                "line": 501,
                                                "column": 51
                                              },
                                              "end": {
                                                "line": 501,
                                                "column": 53
                                              }
                                            },
                                            "name": "oX"
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 21040,
                                  "end": 21127,
                                  "loc": {
                                    "start": {
                                      "line": 502,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 502,
                                      "column": 103
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 21040,
                                    "end": 21126,
                                    "loc": {
                                      "start": {
                                        "line": 502,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 502,
                                        "column": 102
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "Identifier",
                                      "start": 21040,
                                      "end": 21054,
                                      "loc": {
                                        "start": {
                                          "line": 502,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 502,
                                          "column": 30
                                        }
                                      },
                                      "name": "angleDeltaToOX"
                                    },
                                    "right": {
                                      "type": "ConditionalExpression",
                                      "start": 21057,
                                      "end": 21126,
                                      "loc": {
                                        "start": {
                                          "line": 502,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 502,
                                          "column": 102
                                        }
                                      },
                                      "test": {
                                        "type": "BinaryExpression",
                                        "start": 21058,
                                        "end": 21073,
                                        "loc": {
                                          "start": {
                                            "line": 502,
                                            "column": 34
                                          },
                                          "end": {
                                            "line": 502,
                                            "column": 49
                                          }
                                        },
                                        "left": {
                                          "type": "MemberExpression",
                                          "start": 21058,
                                          "end": 21065,
                                          "loc": {
                                            "start": {
                                              "line": 502,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 502,
                                              "column": 41
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 21058,
                                            "end": 21063,
                                            "loc": {
                                              "start": {
                                                "line": 502,
                                                "column": 34
                                              },
                                              "end": {
                                                "line": 502,
                                                "column": 39
                                              }
                                            },
                                            "name": "delta"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 21064,
                                            "end": 21065,
                                            "loc": {
                                              "start": {
                                                "line": 502,
                                                "column": 40
                                              },
                                              "end": {
                                                "line": 502,
                                                "column": 41
                                              }
                                            },
                                            "name": "y"
                                          },
                                          "computed": false
                                        },
                                        "operator": "<",
                                        "right": {
                                          "type": "UnaryExpression",
                                          "start": 21068,
                                          "end": 21073,
                                          "loc": {
                                            "start": {
                                              "line": 502,
                                              "column": 44
                                            },
                                            "end": {
                                              "line": 502,
                                              "column": 49
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Literal",
                                            "start": 21069,
                                            "end": 21073,
                                            "loc": {
                                              "start": {
                                                "line": 502,
                                                "column": 45
                                              },
                                              "end": {
                                                "line": 502,
                                                "column": 49
                                              }
                                            },
                                            "value": 0.000001,
                                            "rawValue": 0.000001,
                                            "raw": "1e-6"
                                          }
                                        },
                                        "parenthesizedExpression": true
                                      },
                                      "consequent": {
                                        "type": "BinaryExpression",
                                        "start": 21078,
                                        "end": 21108,
                                        "loc": {
                                          "start": {
                                            "line": 502,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 502,
                                            "column": 84
                                          }
                                        },
                                        "left": {
                                          "type": "BinaryExpression",
                                          "start": 21079,
                                          "end": 21090,
                                          "loc": {
                                            "start": {
                                              "line": 502,
                                              "column": 55
                                            },
                                            "end": {
                                              "line": 502,
                                              "column": 66
                                            }
                                          },
                                          "left": {
                                            "type": "Literal",
                                            "start": 21079,
                                            "end": 21080,
                                            "loc": {
                                              "start": {
                                                "line": 502,
                                                "column": 55
                                              },
                                              "end": {
                                                "line": 502,
                                                "column": 56
                                              }
                                            },
                                            "value": 2,
                                            "rawValue": 2,
                                            "raw": "2"
                                          },
                                          "operator": "*",
                                          "right": {
                                            "type": "MemberExpression",
                                            "start": 21083,
                                            "end": 21090,
                                            "loc": {
                                              "start": {
                                                "line": 502,
                                                "column": 59
                                              },
                                              "end": {
                                                "line": 502,
                                                "column": 66
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 21083,
                                              "end": 21087,
                                              "loc": {
                                                "start": {
                                                  "line": 502,
                                                  "column": 59
                                                },
                                                "end": {
                                                  "line": 502,
                                                  "column": 63
                                                }
                                              },
                                              "name": "Math"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 21088,
                                              "end": 21090,
                                              "loc": {
                                                "start": {
                                                  "line": 502,
                                                  "column": 64
                                                },
                                                "end": {
                                                  "line": 502,
                                                  "column": 66
                                                }
                                              },
                                              "name": "PI"
                                            },
                                            "computed": false
                                          },
                                          "parenthesizedExpression": true
                                        },
                                        "operator": "-",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 21094,
                                          "end": 21108,
                                          "loc": {
                                            "start": {
                                              "line": 502,
                                              "column": 70
                                            },
                                            "end": {
                                              "line": 502,
                                              "column": 84
                                            }
                                          },
                                          "name": "angleDeltaToOX"
                                        },
                                        "parenthesizedExpression": true
                                      },
                                      "alternate": {
                                        "type": "Identifier",
                                        "start": 21112,
                                        "end": 21126,
                                        "loc": {
                                          "start": {
                                            "line": 502,
                                            "column": 88
                                          },
                                          "end": {
                                            "line": 502,
                                            "column": 102
                                          }
                                        },
                                        "name": "angleDeltaToOX"
                                      }
                                    }
                                  }
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 21144,
                                  "end": 21158,
                                  "loc": {
                                    "start": {
                                      "line": 503,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 503,
                                      "column": 30
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 21148,
                                      "end": 21157,
                                      "loc": {
                                        "start": {
                                          "line": 503,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 503,
                                          "column": 29
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 21148,
                                        "end": 21152,
                                        "loc": {
                                          "start": {
                                            "line": 503,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 503,
                                            "column": 24
                                          }
                                        },
                                        "name": "axis"
                                      },
                                      "init": {
                                        "type": "Identifier",
                                        "start": 21155,
                                        "end": 21157,
                                        "loc": {
                                          "start": {
                                            "line": 503,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 503,
                                            "column": 29
                                          }
                                        },
                                        "name": "oX"
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 21175,
                                  "end": 21212,
                                  "loc": {
                                    "start": {
                                      "line": 504,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 504,
                                      "column": 53
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 21179,
                                      "end": 21211,
                                      "loc": {
                                        "start": {
                                          "line": 504,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 504,
                                          "column": 52
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 21179,
                                        "end": 21192,
                                        "loc": {
                                          "start": {
                                            "line": 504,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 504,
                                            "column": 33
                                          }
                                        },
                                        "name": "angleAxisToOX"
                                      },
                                      "init": {
                                        "type": "CallExpression",
                                        "start": 21195,
                                        "end": 21211,
                                        "loc": {
                                          "start": {
                                            "line": 504,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 504,
                                            "column": 52
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 21195,
                                          "end": 21207,
                                          "loc": {
                                            "start": {
                                              "line": 504,
                                              "column": 36
                                            },
                                            "end": {
                                              "line": 504,
                                              "column": 48
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 21195,
                                            "end": 21199,
                                            "loc": {
                                              "start": {
                                                "line": 504,
                                                "column": 36
                                              },
                                              "end": {
                                                "line": 504,
                                                "column": 40
                                              }
                                            },
                                            "name": "axis"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 21200,
                                            "end": 21207,
                                            "loc": {
                                              "start": {
                                                "line": 504,
                                                "column": 41
                                              },
                                              "end": {
                                                "line": 504,
                                                "column": 48
                                              }
                                            },
                                            "name": "angleTo"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 21208,
                                            "end": 21210,
                                            "loc": {
                                              "start": {
                                                "line": 504,
                                                "column": 49
                                              },
                                              "end": {
                                                "line": 504,
                                                "column": 51
                                              }
                                            },
                                            "name": "oX"
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 21229,
                                  "end": 21312,
                                  "loc": {
                                    "start": {
                                      "line": 505,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 505,
                                      "column": 99
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 21229,
                                    "end": 21311,
                                    "loc": {
                                      "start": {
                                        "line": 505,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 505,
                                        "column": 98
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "Identifier",
                                      "start": 21229,
                                      "end": 21242,
                                      "loc": {
                                        "start": {
                                          "line": 505,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 505,
                                          "column": 29
                                        }
                                      },
                                      "name": "angleAxisToOX"
                                    },
                                    "right": {
                                      "type": "ConditionalExpression",
                                      "start": 21245,
                                      "end": 21311,
                                      "loc": {
                                        "start": {
                                          "line": 505,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 505,
                                          "column": 98
                                        }
                                      },
                                      "test": {
                                        "type": "BinaryExpression",
                                        "start": 21246,
                                        "end": 21260,
                                        "loc": {
                                          "start": {
                                            "line": 505,
                                            "column": 33
                                          },
                                          "end": {
                                            "line": 505,
                                            "column": 47
                                          }
                                        },
                                        "left": {
                                          "type": "MemberExpression",
                                          "start": 21246,
                                          "end": 21252,
                                          "loc": {
                                            "start": {
                                              "line": 505,
                                              "column": 33
                                            },
                                            "end": {
                                              "line": 505,
                                              "column": 39
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 21246,
                                            "end": 21250,
                                            "loc": {
                                              "start": {
                                                "line": 505,
                                                "column": 33
                                              },
                                              "end": {
                                                "line": 505,
                                                "column": 37
                                              }
                                            },
                                            "name": "axis"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 21251,
                                            "end": 21252,
                                            "loc": {
                                              "start": {
                                                "line": 505,
                                                "column": 38
                                              },
                                              "end": {
                                                "line": 505,
                                                "column": 39
                                              }
                                            },
                                            "name": "y"
                                          },
                                          "computed": false
                                        },
                                        "operator": "<",
                                        "right": {
                                          "type": "UnaryExpression",
                                          "start": 21255,
                                          "end": 21260,
                                          "loc": {
                                            "start": {
                                              "line": 505,
                                              "column": 42
                                            },
                                            "end": {
                                              "line": 505,
                                              "column": 47
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Literal",
                                            "start": 21256,
                                            "end": 21260,
                                            "loc": {
                                              "start": {
                                                "line": 505,
                                                "column": 43
                                              },
                                              "end": {
                                                "line": 505,
                                                "column": 47
                                              }
                                            },
                                            "value": 0.000001,
                                            "rawValue": 0.000001,
                                            "raw": "1e-6"
                                          }
                                        },
                                        "parenthesizedExpression": true
                                      },
                                      "consequent": {
                                        "type": "BinaryExpression",
                                        "start": 21265,
                                        "end": 21294,
                                        "loc": {
                                          "start": {
                                            "line": 505,
                                            "column": 52
                                          },
                                          "end": {
                                            "line": 505,
                                            "column": 81
                                          }
                                        },
                                        "left": {
                                          "type": "BinaryExpression",
                                          "start": 21266,
                                          "end": 21277,
                                          "loc": {
                                            "start": {
                                              "line": 505,
                                              "column": 53
                                            },
                                            "end": {
                                              "line": 505,
                                              "column": 64
                                            }
                                          },
                                          "left": {
                                            "type": "Literal",
                                            "start": 21266,
                                            "end": 21267,
                                            "loc": {
                                              "start": {
                                                "line": 505,
                                                "column": 53
                                              },
                                              "end": {
                                                "line": 505,
                                                "column": 54
                                              }
                                            },
                                            "value": 2,
                                            "rawValue": 2,
                                            "raw": "2"
                                          },
                                          "operator": "*",
                                          "right": {
                                            "type": "MemberExpression",
                                            "start": 21270,
                                            "end": 21277,
                                            "loc": {
                                              "start": {
                                                "line": 505,
                                                "column": 57
                                              },
                                              "end": {
                                                "line": 505,
                                                "column": 64
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 21270,
                                              "end": 21274,
                                              "loc": {
                                                "start": {
                                                  "line": 505,
                                                  "column": 57
                                                },
                                                "end": {
                                                  "line": 505,
                                                  "column": 61
                                                }
                                              },
                                              "name": "Math"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 21275,
                                              "end": 21277,
                                              "loc": {
                                                "start": {
                                                  "line": 505,
                                                  "column": 62
                                                },
                                                "end": {
                                                  "line": 505,
                                                  "column": 64
                                                }
                                              },
                                              "name": "PI"
                                            },
                                            "computed": false
                                          },
                                          "parenthesizedExpression": true
                                        },
                                        "operator": "-",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 21281,
                                          "end": 21294,
                                          "loc": {
                                            "start": {
                                              "line": 505,
                                              "column": 68
                                            },
                                            "end": {
                                              "line": 505,
                                              "column": 81
                                            }
                                          },
                                          "name": "angleAxisToOX"
                                        },
                                        "parenthesizedExpression": true
                                      },
                                      "alternate": {
                                        "type": "Identifier",
                                        "start": 21298,
                                        "end": 21311,
                                        "loc": {
                                          "start": {
                                            "line": 505,
                                            "column": 85
                                          },
                                          "end": {
                                            "line": 505,
                                            "column": 98
                                          }
                                        },
                                        "name": "angleAxisToOX"
                                      }
                                    }
                                  }
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 21330,
                                  "end": 21460,
                                  "loc": {
                                    "start": {
                                      "line": 507,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 507,
                                      "column": 146
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 21334,
                                      "end": 21459,
                                      "loc": {
                                        "start": {
                                          "line": 507,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 507,
                                          "column": 145
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 21334,
                                        "end": 21338,
                                        "loc": {
                                          "start": {
                                            "line": 507,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 507,
                                            "column": 24
                                          }
                                        },
                                        "name": "diff"
                                      },
                                      "init": {
                                        "type": "ConditionalExpression",
                                        "start": 21341,
                                        "end": 21459,
                                        "loc": {
                                          "start": {
                                            "line": 507,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 507,
                                            "column": 145
                                          }
                                        },
                                        "test": {
                                          "type": "BinaryExpression",
                                          "start": 21342,
                                          "end": 21372,
                                          "loc": {
                                            "start": {
                                              "line": 507,
                                              "column": 28
                                            },
                                            "end": {
                                              "line": 507,
                                              "column": 58
                                            }
                                          },
                                          "left": {
                                            "type": "Identifier",
                                            "start": 21342,
                                            "end": 21356,
                                            "loc": {
                                              "start": {
                                                "line": 507,
                                                "column": 28
                                              },
                                              "end": {
                                                "line": 507,
                                                "column": 42
                                              }
                                            },
                                            "name": "angleDeltaToOX"
                                          },
                                          "operator": ">",
                                          "right": {
                                            "type": "Identifier",
                                            "start": 21359,
                                            "end": 21372,
                                            "loc": {
                                              "start": {
                                                "line": 507,
                                                "column": 45
                                              },
                                              "end": {
                                                "line": 507,
                                                "column": 58
                                              }
                                            },
                                            "name": "angleAxisToOX"
                                          },
                                          "parenthesizedExpression": true
                                        },
                                        "consequent": {
                                          "type": "BinaryExpression",
                                          "start": 21377,
                                          "end": 21407,
                                          "loc": {
                                            "start": {
                                              "line": 507,
                                              "column": 63
                                            },
                                            "end": {
                                              "line": 507,
                                              "column": 93
                                            }
                                          },
                                          "left": {
                                            "type": "Identifier",
                                            "start": 21377,
                                            "end": 21391,
                                            "loc": {
                                              "start": {
                                                "line": 507,
                                                "column": 63
                                              },
                                              "end": {
                                                "line": 507,
                                                "column": 77
                                              }
                                            },
                                            "name": "angleDeltaToOX"
                                          },
                                          "operator": "-",
                                          "right": {
                                            "type": "Identifier",
                                            "start": 21394,
                                            "end": 21407,
                                            "loc": {
                                              "start": {
                                                "line": 507,
                                                "column": 80
                                              },
                                              "end": {
                                                "line": 507,
                                                "column": 93
                                              }
                                            },
                                            "name": "angleAxisToOX"
                                          },
                                          "parenthesizedExpression": true
                                        },
                                        "alternate": {
                                          "type": "BinaryExpression",
                                          "start": 21412,
                                          "end": 21458,
                                          "loc": {
                                            "start": {
                                              "line": 507,
                                              "column": 98
                                            },
                                            "end": {
                                              "line": 507,
                                              "column": 144
                                            }
                                          },
                                          "left": {
                                            "type": "BinaryExpression",
                                            "start": 21412,
                                            "end": 21442,
                                            "loc": {
                                              "start": {
                                                "line": 507,
                                                "column": 98
                                              },
                                              "end": {
                                                "line": 507,
                                                "column": 128
                                              }
                                            },
                                            "left": {
                                              "type": "BinaryExpression",
                                              "start": 21413,
                                              "end": 21424,
                                              "loc": {
                                                "start": {
                                                  "line": 507,
                                                  "column": 99
                                                },
                                                "end": {
                                                  "line": 507,
                                                  "column": 110
                                                }
                                              },
                                              "left": {
                                                "type": "Literal",
                                                "start": 21413,
                                                "end": 21414,
                                                "loc": {
                                                  "start": {
                                                    "line": 507,
                                                    "column": 99
                                                  },
                                                  "end": {
                                                    "line": 507,
                                                    "column": 100
                                                  }
                                                },
                                                "value": 2,
                                                "rawValue": 2,
                                                "raw": "2"
                                              },
                                              "operator": "*",
                                              "right": {
                                                "type": "MemberExpression",
                                                "start": 21417,
                                                "end": 21424,
                                                "loc": {
                                                  "start": {
                                                    "line": 507,
                                                    "column": 103
                                                  },
                                                  "end": {
                                                    "line": 507,
                                                    "column": 110
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 21417,
                                                  "end": 21421,
                                                  "loc": {
                                                    "start": {
                                                      "line": 507,
                                                      "column": 103
                                                    },
                                                    "end": {
                                                      "line": 507,
                                                      "column": 107
                                                    }
                                                  },
                                                  "name": "Math"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 21422,
                                                  "end": 21424,
                                                  "loc": {
                                                    "start": {
                                                      "line": 507,
                                                      "column": 108
                                                    },
                                                    "end": {
                                                      "line": 507,
                                                      "column": 110
                                                    }
                                                  },
                                                  "name": "PI"
                                                },
                                                "computed": false
                                              },
                                              "parenthesizedExpression": true
                                            },
                                            "operator": "+",
                                            "right": {
                                              "type": "Identifier",
                                              "start": 21428,
                                              "end": 21442,
                                              "loc": {
                                                "start": {
                                                  "line": 507,
                                                  "column": 114
                                                },
                                                "end": {
                                                  "line": 507,
                                                  "column": 128
                                                }
                                              },
                                              "name": "angleDeltaToOX"
                                            }
                                          },
                                          "operator": "-",
                                          "right": {
                                            "type": "Identifier",
                                            "start": 21445,
                                            "end": 21458,
                                            "loc": {
                                              "start": {
                                                "line": 507,
                                                "column": 131
                                              },
                                              "end": {
                                                "line": 507,
                                                "column": 144
                                              }
                                            },
                                            "name": "angleAxisToOX"
                                          },
                                          "parenthesizedExpression": true
                                        }
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 21477,
                                  "end": 21542,
                                  "loc": {
                                    "start": {
                                      "line": 508,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 508,
                                      "column": 81
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 21481,
                                      "end": 21541,
                                      "loc": {
                                        "start": {
                                          "line": 508,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 508,
                                          "column": 80
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 21481,
                                        "end": 21486,
                                        "loc": {
                                          "start": {
                                            "line": 508,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 508,
                                            "column": 25
                                          }
                                        },
                                        "name": "round"
                                      },
                                      "init": {
                                        "type": "CallExpression",
                                        "start": 21489,
                                        "end": 21541,
                                        "loc": {
                                          "start": {
                                            "line": 508,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 508,
                                            "column": 80
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 21489,
                                          "end": 21499,
                                          "loc": {
                                            "start": {
                                              "line": 508,
                                              "column": 28
                                            },
                                            "end": {
                                              "line": 508,
                                              "column": 38
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 21489,
                                            "end": 21493,
                                            "loc": {
                                              "start": {
                                                "line": 508,
                                                "column": 28
                                              },
                                              "end": {
                                                "line": 508,
                                                "column": 32
                                              }
                                            },
                                            "name": "Math"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 21494,
                                            "end": 21499,
                                            "loc": {
                                              "start": {
                                                "line": 508,
                                                "column": 33
                                              },
                                              "end": {
                                                "line": 508,
                                                "column": 38
                                              }
                                            },
                                            "name": "round"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "BinaryExpression",
                                            "start": 21500,
                                            "end": 21540,
                                            "loc": {
                                              "start": {
                                                "line": 508,
                                                "column": 39
                                              },
                                              "end": {
                                                "line": 508,
                                                "column": 79
                                              }
                                            },
                                            "left": {
                                              "type": "BinaryExpression",
                                              "start": 21500,
                                              "end": 21524,
                                              "loc": {
                                                "start": {
                                                  "line": 508,
                                                  "column": 39
                                                },
                                                "end": {
                                                  "line": 508,
                                                  "column": 63
                                                }
                                              },
                                              "left": {
                                                "type": "Identifier",
                                                "start": 21500,
                                                "end": 21504,
                                                "loc": {
                                                  "start": {
                                                    "line": 508,
                                                    "column": 39
                                                  },
                                                  "end": {
                                                    "line": 508,
                                                    "column": 43
                                                  }
                                                },
                                                "name": "diff"
                                              },
                                              "operator": "*",
                                              "right": {
                                                "type": "Identifier",
                                                "start": 21507,
                                                "end": 21524,
                                                "loc": {
                                                  "start": {
                                                    "line": 508,
                                                    "column": 46
                                                  },
                                                  "end": {
                                                    "line": 508,
                                                    "column": 63
                                                  }
                                                },
                                                "name": "nbShiftDirections"
                                              }
                                            },
                                            "operator": "/",
                                            "right": {
                                              "type": "BinaryExpression",
                                              "start": 21528,
                                              "end": 21539,
                                              "loc": {
                                                "start": {
                                                  "line": 508,
                                                  "column": 67
                                                },
                                                "end": {
                                                  "line": 508,
                                                  "column": 78
                                                }
                                              },
                                              "left": {
                                                "type": "Literal",
                                                "start": 21528,
                                                "end": 21529,
                                                "loc": {
                                                  "start": {
                                                    "line": 508,
                                                    "column": 67
                                                  },
                                                  "end": {
                                                    "line": 508,
                                                    "column": 68
                                                  }
                                                },
                                                "value": 2,
                                                "rawValue": 2,
                                                "raw": "2"
                                              },
                                              "operator": "*",
                                              "right": {
                                                "type": "MemberExpression",
                                                "start": 21532,
                                                "end": 21539,
                                                "loc": {
                                                  "start": {
                                                    "line": 508,
                                                    "column": 71
                                                  },
                                                  "end": {
                                                    "line": 508,
                                                    "column": 78
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 21532,
                                                  "end": 21536,
                                                  "loc": {
                                                    "start": {
                                                      "line": 508,
                                                      "column": 71
                                                    },
                                                    "end": {
                                                      "line": 508,
                                                      "column": 75
                                                    }
                                                  },
                                                  "name": "Math"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 21537,
                                                  "end": 21539,
                                                  "loc": {
                                                    "start": {
                                                      "line": 508,
                                                      "column": 76
                                                    },
                                                    "end": {
                                                      "line": 508,
                                                      "column": 78
                                                    }
                                                  },
                                                  "name": "PI"
                                                },
                                                "computed": false
                                              },
                                              "parenthesizedExpression": true
                                            }
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 21559,
                                  "end": 21613,
                                  "loc": {
                                    "start": {
                                      "line": 509,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 509,
                                      "column": 70
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 21563,
                                      "end": 21612,
                                      "loc": {
                                        "start": {
                                          "line": 509,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 509,
                                          "column": 69
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 21563,
                                        "end": 21568,
                                        "loc": {
                                          "start": {
                                            "line": 509,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 509,
                                            "column": 25
                                          }
                                        },
                                        "name": "angle"
                                      },
                                      "init": {
                                        "type": "BinaryExpression",
                                        "start": 21571,
                                        "end": 21612,
                                        "loc": {
                                          "start": {
                                            "line": 509,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 509,
                                            "column": 69
                                          }
                                        },
                                        "left": {
                                          "type": "BinaryExpression",
                                          "start": 21571,
                                          "end": 21592,
                                          "loc": {
                                            "start": {
                                              "line": 509,
                                              "column": 28
                                            },
                                            "end": {
                                              "line": 509,
                                              "column": 49
                                            }
                                          },
                                          "left": {
                                            "type": "BinaryExpression",
                                            "start": 21572,
                                            "end": 21583,
                                            "loc": {
                                              "start": {
                                                "line": 509,
                                                "column": 29
                                              },
                                              "end": {
                                                "line": 509,
                                                "column": 40
                                              }
                                            },
                                            "left": {
                                              "type": "Literal",
                                              "start": 21572,
                                              "end": 21573,
                                              "loc": {
                                                "start": {
                                                  "line": 509,
                                                  "column": 29
                                                },
                                                "end": {
                                                  "line": 509,
                                                  "column": 30
                                                }
                                              },
                                              "value": 2,
                                              "rawValue": 2,
                                              "raw": "2"
                                            },
                                            "operator": "*",
                                            "right": {
                                              "type": "MemberExpression",
                                              "start": 21576,
                                              "end": 21583,
                                              "loc": {
                                                "start": {
                                                  "line": 509,
                                                  "column": 33
                                                },
                                                "end": {
                                                  "line": 509,
                                                  "column": 40
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 21576,
                                                "end": 21580,
                                                "loc": {
                                                  "start": {
                                                    "line": 509,
                                                    "column": 33
                                                  },
                                                  "end": {
                                                    "line": 509,
                                                    "column": 37
                                                  }
                                                },
                                                "name": "Math"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 21581,
                                                "end": 21583,
                                                "loc": {
                                                  "start": {
                                                    "line": 509,
                                                    "column": 38
                                                  },
                                                  "end": {
                                                    "line": 509,
                                                    "column": 40
                                                  }
                                                },
                                                "name": "PI"
                                              },
                                              "computed": false
                                            },
                                            "parenthesizedExpression": true
                                          },
                                          "operator": "*",
                                          "right": {
                                            "type": "Identifier",
                                            "start": 21587,
                                            "end": 21592,
                                            "loc": {
                                              "start": {
                                                "line": 509,
                                                "column": 44
                                              },
                                              "end": {
                                                "line": 509,
                                                "column": 49
                                              }
                                            },
                                            "name": "round"
                                          }
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 21595,
                                          "end": 21612,
                                          "loc": {
                                            "start": {
                                              "line": 509,
                                              "column": 52
                                            },
                                            "end": {
                                              "line": 509,
                                              "column": 69
                                            }
                                          },
                                          "name": "nbShiftDirections"
                                        }
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 21630,
                                  "end": 21653,
                                  "loc": {
                                    "start": {
                                      "line": 510,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 510,
                                      "column": 39
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 21630,
                                    "end": 21652,
                                    "loc": {
                                      "start": {
                                        "line": 510,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 510,
                                        "column": 38
                                      }
                                    },
                                    "operator": "+=",
                                    "left": {
                                      "type": "Identifier",
                                      "start": 21630,
                                      "end": 21635,
                                      "loc": {
                                        "start": {
                                          "line": 510,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 510,
                                          "column": 21
                                        }
                                      },
                                      "name": "angle"
                                    },
                                    "right": {
                                      "type": "Identifier",
                                      "start": 21639,
                                      "end": 21652,
                                      "loc": {
                                        "start": {
                                          "line": 510,
                                          "column": 25
                                        },
                                        "end": {
                                          "line": 510,
                                          "column": 38
                                        }
                                      },
                                      "name": "angleAxisToOX"
                                    }
                                  }
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 21670,
                                  "end": 21737,
                                  "loc": {
                                    "start": {
                                      "line": 511,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 511,
                                      "column": 83
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 21674,
                                      "end": 21736,
                                      "loc": {
                                        "start": {
                                          "line": 511,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 511,
                                          "column": 82
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 21674,
                                        "end": 21677,
                                        "loc": {
                                          "start": {
                                            "line": 511,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 511,
                                            "column": 23
                                          }
                                        },
                                        "name": "dir"
                                      },
                                      "init": {
                                        "type": "NewExpression",
                                        "start": 21680,
                                        "end": 21736,
                                        "loc": {
                                          "start": {
                                            "line": 511,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 511,
                                            "column": 82
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 21684,
                                          "end": 21697,
                                          "loc": {
                                            "start": {
                                              "line": 511,
                                              "column": 30
                                            },
                                            "end": {
                                              "line": 511,
                                              "column": 43
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 21684,
                                            "end": 21689,
                                            "loc": {
                                              "start": {
                                                "line": 511,
                                                "column": 30
                                              },
                                              "end": {
                                                "line": 511,
                                                "column": 35
                                              }
                                            },
                                            "name": "THREE"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 21690,
                                            "end": 21697,
                                            "loc": {
                                              "start": {
                                                "line": 511,
                                                "column": 36
                                              },
                                              "end": {
                                                "line": 511,
                                                "column": 43
                                              }
                                            },
                                            "name": "Vector3"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "CallExpression",
                                            "start": 21698,
                                            "end": 21713,
                                            "loc": {
                                              "start": {
                                                "line": 511,
                                                "column": 44
                                              },
                                              "end": {
                                                "line": 511,
                                                "column": 59
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 21698,
                                              "end": 21706,
                                              "loc": {
                                                "start": {
                                                  "line": 511,
                                                  "column": 44
                                                },
                                                "end": {
                                                  "line": 511,
                                                  "column": 52
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 21698,
                                                "end": 21702,
                                                "loc": {
                                                  "start": {
                                                    "line": 511,
                                                    "column": 44
                                                  },
                                                  "end": {
                                                    "line": 511,
                                                    "column": 48
                                                  }
                                                },
                                                "name": "Math"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 21703,
                                                "end": 21706,
                                                "loc": {
                                                  "start": {
                                                    "line": 511,
                                                    "column": 49
                                                  },
                                                  "end": {
                                                    "line": 511,
                                                    "column": 52
                                                  }
                                                },
                                                "name": "cos"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 21707,
                                                "end": 21712,
                                                "loc": {
                                                  "start": {
                                                    "line": 511,
                                                    "column": 53
                                                  },
                                                  "end": {
                                                    "line": 511,
                                                    "column": 58
                                                  }
                                                },
                                                "name": "angle"
                                              }
                                            ]
                                          },
                                          {
                                            "type": "CallExpression",
                                            "start": 21715,
                                            "end": 21730,
                                            "loc": {
                                              "start": {
                                                "line": 511,
                                                "column": 61
                                              },
                                              "end": {
                                                "line": 511,
                                                "column": 76
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 21715,
                                              "end": 21723,
                                              "loc": {
                                                "start": {
                                                  "line": 511,
                                                  "column": 61
                                                },
                                                "end": {
                                                  "line": 511,
                                                  "column": 69
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 21715,
                                                "end": 21719,
                                                "loc": {
                                                  "start": {
                                                    "line": 511,
                                                    "column": 61
                                                  },
                                                  "end": {
                                                    "line": 511,
                                                    "column": 65
                                                  }
                                                },
                                                "name": "Math"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 21720,
                                                "end": 21723,
                                                "loc": {
                                                  "start": {
                                                    "line": 511,
                                                    "column": 66
                                                  },
                                                  "end": {
                                                    "line": 511,
                                                    "column": 69
                                                  }
                                                },
                                                "name": "sin"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 21724,
                                                "end": 21729,
                                                "loc": {
                                                  "start": {
                                                    "line": 511,
                                                    "column": 70
                                                  },
                                                  "end": {
                                                    "line": 511,
                                                    "column": 75
                                                  }
                                                },
                                                "name": "angle"
                                              }
                                            ]
                                          },
                                          {
                                            "type": "Literal",
                                            "start": 21732,
                                            "end": 21735,
                                            "loc": {
                                              "start": {
                                                "line": 511,
                                                "column": 78
                                              },
                                              "end": {
                                                "line": 511,
                                                "column": 81
                                              }
                                            },
                                            "value": 0,
                                            "rawValue": 0,
                                            "raw": "0.0"
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 21754,
                                  "end": 21789,
                                  "loc": {
                                    "start": {
                                      "line": 512,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 512,
                                      "column": 51
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 21754,
                                    "end": 21788,
                                    "loc": {
                                      "start": {
                                        "line": 512,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 512,
                                        "column": 50
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 21754,
                                      "end": 21772,
                                      "loc": {
                                        "start": {
                                          "line": 512,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 512,
                                          "column": 34
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 21754,
                                        "end": 21757,
                                        "loc": {
                                          "start": {
                                            "line": 512,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 512,
                                            "column": 19
                                          }
                                        },
                                        "name": "dir"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 21758,
                                        "end": 21772,
                                        "loc": {
                                          "start": {
                                            "line": 512,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 512,
                                            "column": 34
                                          }
                                        },
                                        "name": "multiplyScalar"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "CallExpression",
                                        "start": 21773,
                                        "end": 21787,
                                        "loc": {
                                          "start": {
                                            "line": 512,
                                            "column": 35
                                          },
                                          "end": {
                                            "line": 512,
                                            "column": 49
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 21773,
                                          "end": 21780,
                                          "loc": {
                                            "start": {
                                              "line": 512,
                                              "column": 35
                                            },
                                            "end": {
                                              "line": 512,
                                              "column": 42
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 21773,
                                            "end": 21776,
                                            "loc": {
                                              "start": {
                                                "line": 512,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 512,
                                                "column": 38
                                              }
                                            },
                                            "name": "dir"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 21777,
                                            "end": 21780,
                                            "loc": {
                                              "start": {
                                                "line": 512,
                                                "column": 39
                                              },
                                              "end": {
                                                "line": 512,
                                                "column": 42
                                              }
                                            },
                                            "name": "dot"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 21781,
                                            "end": 21786,
                                            "loc": {
                                              "start": {
                                                "line": 512,
                                                "column": 43
                                              },
                                              "end": {
                                                "line": 512,
                                                "column": 48
                                              }
                                            },
                                            "name": "delta"
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 21806,
                                  "end": 21847,
                                  "loc": {
                                    "start": {
                                      "line": 513,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 513,
                                      "column": 57
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 21806,
                                    "end": 21846,
                                    "loc": {
                                      "start": {
                                        "line": 513,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 513,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 21806,
                                      "end": 21825,
                                      "loc": {
                                        "start": {
                                          "line": 513,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 513,
                                          "column": 35
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 21806,
                                        "end": 21814,
                                        "loc": {
                                          "start": {
                                            "line": 513,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 513,
                                            "column": 24
                                          }
                                        },
                                        "name": "toReturn"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 21815,
                                        "end": 21825,
                                        "loc": {
                                          "start": {
                                            "line": 513,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 513,
                                            "column": 35
                                          }
                                        },
                                        "name": "addVectors"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 21826,
                                        "end": 21840,
                                        "loc": {
                                          "start": {
                                            "line": 513,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 513,
                                            "column": 50
                                          }
                                        },
                                        "name": "neighbourPoint"
                                      },
                                      {
                                        "type": "Identifier",
                                        "start": 21842,
                                        "end": 21845,
                                        "loc": {
                                          "start": {
                                            "line": 513,
                                            "column": 52
                                          },
                                          "end": {
                                            "line": 513,
                                            "column": 55
                                          }
                                        },
                                        "name": "dir"
                                      }
                                    ]
                                  }
                                }
                              ]
                            },
                            "alternate": null
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 21875,
                            "end": 21891,
                            "loc": {
                              "start": {
                                "line": 516,
                                "column": 12
                              },
                              "end": {
                                "line": 516,
                                "column": 28
                              }
                            },
                            "argument": {
                              "type": "Identifier",
                              "start": 21882,
                              "end": 21890,
                              "loc": {
                                "start": {
                                  "line": 516,
                                  "column": 19
                                },
                                "end": {
                                  "line": 516,
                                  "column": 27
                                }
                              },
                              "name": "toReturn"
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 21911,
                      "end": 22033,
                      "loc": {
                        "start": {
                          "line": 519,
                          "column": 8
                        },
                        "end": {
                          "line": 519,
                          "column": 130
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 21915,
                          "end": 22032,
                          "loc": {
                            "start": {
                              "line": 519,
                              "column": 12
                            },
                            "end": {
                              "line": 519,
                              "column": 129
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 21915,
                            "end": 21932,
                            "loc": {
                              "start": {
                                "line": 519,
                                "column": 12
                              },
                              "end": {
                                "line": 519,
                                "column": 29
                              }
                            },
                            "name": "nbShiftDirections"
                          },
                          "init": {
                            "type": "ConditionalExpression",
                            "start": 21935,
                            "end": 22032,
                            "loc": {
                              "start": {
                                "line": 519,
                                "column": 32
                              },
                              "end": {
                                "line": 519,
                                "column": 129
                              }
                            },
                            "test": {
                              "type": "MemberExpression",
                              "start": 21935,
                              "end": 21977,
                              "loc": {
                                "start": {
                                  "line": 519,
                                  "column": 32
                                },
                                "end": {
                                  "line": 519,
                                  "column": 74
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 21935,
                                "end": 21968,
                                "loc": {
                                  "start": {
                                    "line": 519,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 519,
                                    "column": 65
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 21935,
                                  "end": 21956,
                                  "loc": {
                                    "start": {
                                      "line": 519,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 519,
                                      "column": 53
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 21935,
                                    "end": 21943,
                                    "loc": {
                                      "start": {
                                        "line": 519,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 519,
                                        "column": 40
                                      }
                                    },
                                    "name": "sketcher"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 21944,
                                    "end": 21956,
                                    "loc": {
                                      "start": {
                                        "line": 519,
                                        "column": 41
                                      },
                                      "end": {
                                        "line": 519,
                                        "column": 53
                                      }
                                    },
                                    "name": "__parentView"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 21957,
                                  "end": 21968,
                                  "loc": {
                                    "start": {
                                      "line": 519,
                                      "column": 54
                                    },
                                    "end": {
                                      "line": 519,
                                      "column": 65
                                    }
                                  },
                                  "name": "interaction"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 21969,
                                "end": 21977,
                                "loc": {
                                  "start": {
                                    "line": 519,
                                    "column": 66
                                  },
                                  "end": {
                                    "line": 519,
                                    "column": 74
                                  }
                                },
                                "name": "shiftKey"
                              },
                              "computed": false
                            },
                            "consequent": {
                              "type": "MemberExpression",
                              "start": 21980,
                              "end": 22028,
                              "loc": {
                                "start": {
                                  "line": 519,
                                  "column": 77
                                },
                                "end": {
                                  "line": 519,
                                  "column": 125
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 21980,
                                "end": 22012,
                                "loc": {
                                  "start": {
                                    "line": 519,
                                    "column": 77
                                  },
                                  "end": {
                                    "line": 519,
                                    "column": 109
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 21980,
                                  "end": 21988,
                                  "loc": {
                                    "start": {
                                      "line": 519,
                                      "column": 77
                                    },
                                    "end": {
                                      "line": 519,
                                      "column": 85
                                    }
                                  },
                                  "name": "sketcher"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 21989,
                                  "end": 22012,
                                  "loc": {
                                    "start": {
                                      "line": 519,
                                      "column": 86
                                    },
                                    "end": {
                                      "line": 519,
                                      "column": 109
                                    }
                                  },
                                  "name": "__sketchControlsHandler"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 22013,
                                "end": 22028,
                                "loc": {
                                  "start": {
                                    "line": 519,
                                    "column": 110
                                  },
                                  "end": {
                                    "line": 519,
                                    "column": 125
                                  }
                                },
                                "name": "shiftDirections"
                              },
                              "computed": false
                            },
                            "alternate": {
                              "type": "Literal",
                              "start": 22031,
                              "end": 22032,
                              "loc": {
                                "start": {
                                  "line": 519,
                                  "column": 128
                                },
                                "end": {
                                  "line": 519,
                                  "column": 129
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 22042,
                      "end": 22120,
                      "loc": {
                        "start": {
                          "line": 520,
                          "column": 8
                        },
                        "end": {
                          "line": 520,
                          "column": 86
                        }
                      },
                      "test": {
                        "type": "LogicalExpression",
                        "start": 22046,
                        "end": 22093,
                        "loc": {
                          "start": {
                            "line": 520,
                            "column": 12
                          },
                          "end": {
                            "line": 520,
                            "column": 59
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 22046,
                          "end": 22063,
                          "loc": {
                            "start": {
                              "line": 520,
                              "column": 12
                            },
                            "end": {
                              "line": 520,
                              "column": 29
                            }
                          },
                          "name": "nbShiftDirections"
                        },
                        "operator": "&&",
                        "right": {
                          "type": "BinaryExpression",
                          "start": 22067,
                          "end": 22093,
                          "loc": {
                            "start": {
                              "line": 520,
                              "column": 33
                            },
                            "end": {
                              "line": 520,
                              "column": 59
                            }
                          },
                          "left": {
                            "type": "MemberExpression",
                            "start": 22067,
                            "end": 22077,
                            "loc": {
                              "start": {
                                "line": 520,
                                "column": 33
                              },
                              "end": {
                                "line": 520,
                                "column": 43
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 22067,
                              "end": 22070,
                              "loc": {
                                "start": {
                                  "line": 520,
                                  "column": 33
                                },
                                "end": {
                                  "line": 520,
                                  "column": 36
                                }
                              },
                              "name": "obj"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 22071,
                              "end": 22077,
                              "loc": {
                                "start": {
                                  "line": 520,
                                  "column": 37
                                },
                                "end": {
                                  "line": 520,
                                  "column": 43
                                }
                              },
                              "name": "parent"
                            },
                            "computed": false
                          },
                          "operator": "instanceof",
                          "right": {
                            "type": "Identifier",
                            "start": 22089,
                            "end": 22093,
                            "loc": {
                              "start": {
                                "line": 520,
                                "column": 55
                              },
                              "end": {
                                "line": 520,
                                "column": 59
                              }
                            },
                            "name": "Line"
                          }
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 22095,
                        "end": 22120,
                        "loc": {
                          "start": {
                            "line": 520,
                            "column": 61
                          },
                          "end": {
                            "line": 520,
                            "column": 86
                          }
                        },
                        "argument": {
                          "type": "CallExpression",
                          "start": 22102,
                          "end": 22119,
                          "loc": {
                            "start": {
                              "line": 520,
                              "column": 68
                            },
                            "end": {
                              "line": 520,
                              "column": 85
                            }
                          },
                          "callee": {
                            "type": "Identifier",
                            "start": 22102,
                            "end": 22117,
                            "loc": {
                              "start": {
                                "line": 520,
                                "column": 68
                              },
                              "end": {
                                "line": 520,
                                "column": 83
                              }
                            },
                            "name": "snapToDirection"
                          },
                          "arguments": []
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 22130,
                      "end": 22167,
                      "loc": {
                        "start": {
                          "line": 522,
                          "column": 8
                        },
                        "end": {
                          "line": 522,
                          "column": 45
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 22134,
                          "end": 22166,
                          "loc": {
                            "start": {
                              "line": 522,
                              "column": 12
                            },
                            "end": {
                              "line": 522,
                              "column": 44
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 22134,
                            "end": 22142,
                            "loc": {
                              "start": {
                                "line": 522,
                                "column": 12
                              },
                              "end": {
                                "line": 522,
                                "column": 20
                              }
                            },
                            "name": "toReturn"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 22145,
                            "end": 22166,
                            "loc": {
                              "start": {
                                "line": 522,
                                "column": 23
                              },
                              "end": {
                                "line": 522,
                                "column": 44
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 22145,
                              "end": 22164,
                              "loc": {
                                "start": {
                                  "line": 522,
                                  "column": 23
                                },
                                "end": {
                                  "line": 522,
                                  "column": 42
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 22145,
                                "end": 22158,
                                "loc": {
                                  "start": {
                                    "line": 522,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 522,
                                    "column": 36
                                  }
                                },
                                "name": "mousePosition"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 22159,
                                "end": 22164,
                                "loc": {
                                  "start": {
                                    "line": 522,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 522,
                                    "column": 42
                                  }
                                },
                                "name": "clone"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 22177,
                      "end": 22199,
                      "loc": {
                        "start": {
                          "line": 524,
                          "column": 8
                        },
                        "end": {
                          "line": 524,
                          "column": 30
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 22181,
                          "end": 22198,
                          "loc": {
                            "start": {
                              "line": 524,
                              "column": 12
                            },
                            "end": {
                              "line": 524,
                              "column": 29
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 22181,
                            "end": 22193,
                            "loc": {
                              "start": {
                                "line": 524,
                                "column": 12
                              },
                              "end": {
                                "line": 524,
                                "column": 24
                              }
                            },
                            "name": "pointsToSnap"
                          },
                          "init": {
                            "type": "ArrayExpression",
                            "start": 22196,
                            "end": 22198,
                            "loc": {
                              "start": {
                                "line": 524,
                                "column": 27
                              },
                              "end": {
                                "line": 524,
                                "column": 29
                              }
                            },
                            "elements": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 22208,
                      "end": 22429,
                      "loc": {
                        "start": {
                          "line": 525,
                          "column": 8
                        },
                        "end": {
                          "line": 529,
                          "column": 115
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 22212,
                        "end": 22233,
                        "loc": {
                          "start": {
                            "line": 525,
                            "column": 12
                          },
                          "end": {
                            "line": 525,
                            "column": 33
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 22212,
                          "end": 22215,
                          "loc": {
                            "start": {
                              "line": 525,
                              "column": 12
                            },
                            "end": {
                              "line": 525,
                              "column": 15
                            }
                          },
                          "name": "obj"
                        },
                        "operator": "instanceof",
                        "right": {
                          "type": "Identifier",
                          "start": 22228,
                          "end": 22233,
                          "loc": {
                            "start": {
                              "line": 525,
                              "column": 28
                            },
                            "end": {
                              "line": 525,
                              "column": 33
                            }
                          },
                          "name": "Point"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 22247,
                        "end": 22268,
                        "loc": {
                          "start": {
                            "line": 526,
                            "column": 12
                          },
                          "end": {
                            "line": 526,
                            "column": 33
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 22247,
                          "end": 22267,
                          "loc": {
                            "start": {
                              "line": 526,
                              "column": 12
                            },
                            "end": {
                              "line": 526,
                              "column": 32
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "Identifier",
                            "start": 22247,
                            "end": 22259,
                            "loc": {
                              "start": {
                                "line": 526,
                                "column": 12
                              },
                              "end": {
                                "line": 526,
                                "column": 24
                              }
                            },
                            "name": "pointsToSnap"
                          },
                          "right": {
                            "type": "ArrayExpression",
                            "start": 22262,
                            "end": 22267,
                            "loc": {
                              "start": {
                                "line": 526,
                                "column": 27
                              },
                              "end": {
                                "line": 526,
                                "column": 32
                              }
                            },
                            "elements": [
                              {
                                "type": "Identifier",
                                "start": 22263,
                                "end": 22266,
                                "loc": {
                                  "start": {
                                    "line": 526,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 526,
                                    "column": 31
                                  }
                                },
                                "name": "obj"
                              }
                            ]
                          }
                        }
                      },
                      "alternate": {
                        "type": "ExpressionStatement",
                        "start": 22326,
                        "end": 22429,
                        "loc": {
                          "start": {
                            "line": 529,
                            "column": 12
                          },
                          "end": {
                            "line": 529,
                            "column": 115
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 22326,
                          "end": 22428,
                          "loc": {
                            "start": {
                              "line": 529,
                              "column": 12
                            },
                            "end": {
                              "line": 529,
                              "column": 114
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 22326,
                            "end": 22355,
                            "loc": {
                              "start": {
                                "line": 529,
                                "column": 12
                              },
                              "end": {
                                "line": 529,
                                "column": 41
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 22326,
                              "end": 22332,
                              "loc": {
                                "start": {
                                  "line": 529,
                                  "column": 12
                                },
                                "end": {
                                  "line": 529,
                                  "column": 18
                                }
                              },
                              "name": "Sketch",
                              "leadingComments": null
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 22333,
                              "end": 22355,
                              "loc": {
                                "start": {
                                  "line": 529,
                                  "column": 19
                                },
                                "end": {
                                  "line": 529,
                                  "column": 41
                                }
                              },
                              "name": "ForObjectsWithChildren"
                            },
                            "computed": false,
                            "leadingComments": null
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 22356,
                              "end": 22359,
                              "loc": {
                                "start": {
                                  "line": 529,
                                  "column": 42
                                },
                                "end": {
                                  "line": 529,
                                  "column": 45
                                }
                              },
                              "name": "obj"
                            },
                            {
                              "type": "FunctionExpression",
                              "start": 22361,
                              "end": 22427,
                              "loc": {
                                "start": {
                                  "line": 529,
                                  "column": 47
                                },
                                "end": {
                                  "line": 529,
                                  "column": 113
                                }
                              },
                              "id": null,
                              "generator": false,
                              "expression": false,
                              "async": false,
                              "params": [
                                {
                                  "type": "Identifier",
                                  "start": 22371,
                                  "end": 22374,
                                  "loc": {
                                    "start": {
                                      "line": 529,
                                      "column": 57
                                    },
                                    "end": {
                                      "line": 529,
                                      "column": 60
                                    }
                                  },
                                  "name": "arg"
                                }
                              ],
                              "body": {
                                "type": "BlockStatement",
                                "start": 22376,
                                "end": 22427,
                                "loc": {
                                  "start": {
                                    "line": 529,
                                    "column": 62
                                  },
                                  "end": {
                                    "line": 529,
                                    "column": 113
                                  }
                                },
                                "body": [
                                  {
                                    "type": "IfStatement",
                                    "start": 22378,
                                    "end": 22426,
                                    "loc": {
                                      "start": {
                                        "line": 529,
                                        "column": 64
                                      },
                                      "end": {
                                        "line": 529,
                                        "column": 112
                                      }
                                    },
                                    "test": {
                                      "type": "BinaryExpression",
                                      "start": 22381,
                                      "end": 22401,
                                      "loc": {
                                        "start": {
                                          "line": 529,
                                          "column": 67
                                        },
                                        "end": {
                                          "line": 529,
                                          "column": 87
                                        }
                                      },
                                      "left": {
                                        "type": "Identifier",
                                        "start": 22381,
                                        "end": 22384,
                                        "loc": {
                                          "start": {
                                            "line": 529,
                                            "column": 67
                                          },
                                          "end": {
                                            "line": 529,
                                            "column": 70
                                          }
                                        },
                                        "name": "arg"
                                      },
                                      "operator": "instanceof",
                                      "right": {
                                        "type": "Identifier",
                                        "start": 22396,
                                        "end": 22401,
                                        "loc": {
                                          "start": {
                                            "line": 529,
                                            "column": 82
                                          },
                                          "end": {
                                            "line": 529,
                                            "column": 87
                                          }
                                        },
                                        "name": "Point"
                                      }
                                    },
                                    "consequent": {
                                      "type": "ExpressionStatement",
                                      "start": 22403,
                                      "end": 22426,
                                      "loc": {
                                        "start": {
                                          "line": 529,
                                          "column": 89
                                        },
                                        "end": {
                                          "line": 529,
                                          "column": 112
                                        }
                                      },
                                      "expression": {
                                        "type": "CallExpression",
                                        "start": 22403,
                                        "end": 22425,
                                        "loc": {
                                          "start": {
                                            "line": 529,
                                            "column": 89
                                          },
                                          "end": {
                                            "line": 529,
                                            "column": 111
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 22403,
                                          "end": 22420,
                                          "loc": {
                                            "start": {
                                              "line": 529,
                                              "column": 89
                                            },
                                            "end": {
                                              "line": 529,
                                              "column": 106
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 22403,
                                            "end": 22415,
                                            "loc": {
                                              "start": {
                                                "line": 529,
                                                "column": 89
                                              },
                                              "end": {
                                                "line": 529,
                                                "column": 101
                                              }
                                            },
                                            "name": "pointsToSnap"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 22416,
                                            "end": 22420,
                                            "loc": {
                                              "start": {
                                                "line": 529,
                                                "column": 102
                                              },
                                              "end": {
                                                "line": 529,
                                                "column": 106
                                              }
                                            },
                                            "name": "push"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 22421,
                                            "end": 22424,
                                            "loc": {
                                              "start": {
                                                "line": 529,
                                                "column": 107
                                              },
                                              "end": {
                                                "line": 529,
                                                "column": 110
                                              }
                                            },
                                            "name": "arg"
                                          }
                                        ]
                                      }
                                    },
                                    "alternate": null
                                  }
                                ]
                              }
                            }
                          ],
                          "leadingComments": null
                        },
                        "leadingComments": [
                          {
                            "type": "CommentLine",
                            "value": "/return toReturn;",
                            "start": 22294,
                            "end": 22313,
                            "loc": {
                              "start": {
                                "line": 528,
                                "column": 12
                              },
                              "end": {
                                "line": 528,
                                "column": 31
                              }
                            },
                            "range": [
                              22294,
                              22313
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 22439,
                      "end": 22495,
                      "loc": {
                        "start": {
                          "line": 531,
                          "column": 8
                        },
                        "end": {
                          "line": 531,
                          "column": 64
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 22443,
                          "end": 22494,
                          "loc": {
                            "start": {
                              "line": 531,
                              "column": 12
                            },
                            "end": {
                              "line": 531,
                              "column": 63
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 22443,
                            "end": 22467,
                            "loc": {
                              "start": {
                                "line": 531,
                                "column": 12
                              },
                              "end": {
                                "line": 531,
                                "column": 36
                              }
                            },
                            "name": "fromMousePositionToPoint"
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 22470,
                            "end": 22494,
                            "loc": {
                              "start": {
                                "line": 531,
                                "column": 39
                              },
                              "end": {
                                "line": 531,
                                "column": 63
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 22474,
                              "end": 22487,
                              "loc": {
                                "start": {
                                  "line": 531,
                                  "column": 43
                                },
                                "end": {
                                  "line": 531,
                                  "column": 56
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 22474,
                                "end": 22479,
                                "loc": {
                                  "start": {
                                    "line": 531,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 531,
                                    "column": 48
                                  }
                                },
                                "name": "THREE"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 22480,
                                "end": 22487,
                                "loc": {
                                  "start": {
                                    "line": 531,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 531,
                                    "column": 56
                                  }
                                },
                                "name": "Vector3"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Literal",
                                "start": 22488,
                                "end": 22489,
                                "loc": {
                                  "start": {
                                    "line": 531,
                                    "column": 57
                                  },
                                  "end": {
                                    "line": 531,
                                    "column": 58
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              },
                              {
                                "type": "Literal",
                                "start": 22490,
                                "end": 22491,
                                "loc": {
                                  "start": {
                                    "line": 531,
                                    "column": 59
                                  },
                                  "end": {
                                    "line": 531,
                                    "column": 60
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              },
                              {
                                "type": "Literal",
                                "start": 22492,
                                "end": 22493,
                                "loc": {
                                  "start": {
                                    "line": 531,
                                    "column": 61
                                  },
                                  "end": {
                                    "line": 531,
                                    "column": 62
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 22505,
                      "end": 22532,
                      "loc": {
                        "start": {
                          "line": 533,
                          "column": 8
                        },
                        "end": {
                          "line": 533,
                          "column": 35
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 22509,
                          "end": 22531,
                          "loc": {
                            "start": {
                              "line": 533,
                              "column": 12
                            },
                            "end": {
                              "line": 533,
                              "column": 34
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 22509,
                            "end": 22517,
                            "loc": {
                              "start": {
                                "line": 533,
                                "column": 12
                              },
                              "end": {
                                "line": 533,
                                "column": 20
                              }
                            },
                            "name": "distance"
                          },
                          "init": {
                            "type": "Identifier",
                            "start": 22520,
                            "end": 22531,
                            "loc": {
                              "start": {
                                "line": 533,
                                "column": 23
                              },
                              "end": {
                                "line": 533,
                                "column": 34
                              }
                            },
                            "name": "maxDistance"
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 22541,
                      "end": 22557,
                      "loc": {
                        "start": {
                          "line": 534,
                          "column": 8
                        },
                        "end": {
                          "line": 534,
                          "column": 24
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 22545,
                          "end": 22556,
                          "loc": {
                            "start": {
                              "line": 534,
                              "column": 12
                            },
                            "end": {
                              "line": 534,
                              "column": 23
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 22545,
                            "end": 22549,
                            "loc": {
                              "start": {
                                "line": 534,
                                "column": 12
                              },
                              "end": {
                                "line": 534,
                                "column": 16
                              }
                            },
                            "name": "self"
                          },
                          "init": {
                            "type": "ThisExpression",
                            "start": 22552,
                            "end": 22556,
                            "loc": {
                              "start": {
                                "line": 534,
                                "column": 19
                              },
                              "end": {
                                "line": 534,
                                "column": 23
                              }
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 22566,
                      "end": 23373,
                      "loc": {
                        "start": {
                          "line": 535,
                          "column": 8
                        },
                        "end": {
                          "line": 548,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 22566,
                        "end": 23372,
                        "loc": {
                          "start": {
                            "line": 535,
                            "column": 8
                          },
                          "end": {
                            "line": 548,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 22566,
                          "end": 22586,
                          "loc": {
                            "start": {
                              "line": 535,
                              "column": 8
                            },
                            "end": {
                              "line": 535,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 22566,
                            "end": 22578,
                            "loc": {
                              "start": {
                                "line": 535,
                                "column": 8
                              },
                              "end": {
                                "line": 535,
                                "column": 20
                              }
                            },
                            "name": "pointsToSnap"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 22579,
                            "end": 22586,
                            "loc": {
                              "start": {
                                "line": 535,
                                "column": 21
                              },
                              "end": {
                                "line": 535,
                                "column": 28
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "FunctionExpression",
                            "start": 22587,
                            "end": 23371,
                            "loc": {
                              "start": {
                                "line": 535,
                                "column": 29
                              },
                              "end": {
                                "line": 548,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 22596,
                                "end": 22605,
                                "loc": {
                                  "start": {
                                    "line": 535,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 535,
                                    "column": 47
                                  }
                                },
                                "name": "geomPoint"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 22607,
                              "end": 23371,
                              "loc": {
                                "start": {
                                  "line": 535,
                                  "column": 49
                                },
                                "end": {
                                  "line": 548,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "IfStatement",
                                  "start": 22621,
                                  "end": 22727,
                                  "loc": {
                                    "start": {
                                      "line": 536,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 536,
                                      "column": 118
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 22625,
                                    "end": 22652,
                                    "loc": {
                                      "start": {
                                        "line": 536,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 536,
                                        "column": 43
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 22625,
                                      "end": 22638,
                                      "loc": {
                                        "start": {
                                          "line": 536,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 536,
                                          "column": 29
                                        }
                                      },
                                      "name": "lastDragPoint"
                                    },
                                    "operator": "!==",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 22643,
                                      "end": 22652,
                                      "loc": {
                                        "start": {
                                          "line": 536,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 536,
                                          "column": 43
                                        }
                                      },
                                      "name": "undefined"
                                    }
                                  },
                                  "consequent": {
                                    "type": "ExpressionStatement",
                                    "start": 22654,
                                    "end": 22727,
                                    "loc": {
                                      "start": {
                                        "line": 536,
                                        "column": 45
                                      },
                                      "end": {
                                        "line": 536,
                                        "column": 118
                                      }
                                    },
                                    "expression": {
                                      "type": "AssignmentExpression",
                                      "start": 22654,
                                      "end": 22726,
                                      "loc": {
                                        "start": {
                                          "line": 536,
                                          "column": 45
                                        },
                                        "end": {
                                          "line": 536,
                                          "column": 117
                                        }
                                      },
                                      "operator": "=",
                                      "left": {
                                        "type": "Identifier",
                                        "start": 22654,
                                        "end": 22678,
                                        "loc": {
                                          "start": {
                                            "line": 536,
                                            "column": 45
                                          },
                                          "end": {
                                            "line": 536,
                                            "column": 69
                                          }
                                        },
                                        "name": "fromMousePositionToPoint"
                                      },
                                      "right": {
                                        "type": "CallExpression",
                                        "start": 22681,
                                        "end": 22726,
                                        "loc": {
                                          "start": {
                                            "line": 536,
                                            "column": 72
                                          },
                                          "end": {
                                            "line": 536,
                                            "column": 117
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 22681,
                                          "end": 22711,
                                          "loc": {
                                            "start": {
                                              "line": 536,
                                              "column": 72
                                            },
                                            "end": {
                                              "line": 536,
                                              "column": 102
                                            }
                                          },
                                          "object": {
                                            "type": "CallExpression",
                                            "start": 22681,
                                            "end": 22707,
                                            "loc": {
                                              "start": {
                                                "line": 536,
                                                "column": 72
                                              },
                                              "end": {
                                                "line": 536,
                                                "column": 98
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 22681,
                                              "end": 22705,
                                              "loc": {
                                                "start": {
                                                  "line": 536,
                                                  "column": 72
                                                },
                                                "end": {
                                                  "line": 536,
                                                  "column": 96
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 22681,
                                                "end": 22699,
                                                "loc": {
                                                  "start": {
                                                    "line": 536,
                                                    "column": 72
                                                  },
                                                  "end": {
                                                    "line": 536,
                                                    "column": 90
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 22681,
                                                  "end": 22690,
                                                  "loc": {
                                                    "start": {
                                                      "line": 536,
                                                      "column": 72
                                                    },
                                                    "end": {
                                                      "line": 536,
                                                      "column": 81
                                                    }
                                                  },
                                                  "name": "geomPoint"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 22691,
                                                  "end": 22699,
                                                  "loc": {
                                                    "start": {
                                                      "line": 536,
                                                      "column": 82
                                                    },
                                                    "end": {
                                                      "line": 536,
                                                      "column": 90
                                                    }
                                                  },
                                                  "name": "position"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 22700,
                                                "end": 22705,
                                                "loc": {
                                                  "start": {
                                                    "line": 536,
                                                    "column": 91
                                                  },
                                                  "end": {
                                                    "line": 536,
                                                    "column": 96
                                                  }
                                                },
                                                "name": "clone"
                                              },
                                              "computed": false
                                            },
                                            "arguments": []
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 22708,
                                            "end": 22711,
                                            "loc": {
                                              "start": {
                                                "line": 536,
                                                "column": 99
                                              },
                                              "end": {
                                                "line": 536,
                                                "column": 102
                                              }
                                            },
                                            "name": "sub"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 22712,
                                            "end": 22725,
                                            "loc": {
                                              "start": {
                                                "line": 536,
                                                "column": 103
                                              },
                                              "end": {
                                                "line": 536,
                                                "column": 116
                                              }
                                            },
                                            "name": "lastDragPoint"
                                          }
                                        ]
                                      }
                                    }
                                  },
                                  "alternate": null
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 22740,
                                  "end": 22781,
                                  "loc": {
                                    "start": {
                                      "line": 537,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 537,
                                      "column": 53
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 22744,
                                      "end": 22780,
                                      "loc": {
                                        "start": {
                                          "line": 537,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 537,
                                          "column": 52
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 22744,
                                        "end": 22756,
                                        "loc": {
                                          "start": {
                                            "line": 537,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 537,
                                            "column": 28
                                          }
                                        },
                                        "name": "snapPosition"
                                      },
                                      "init": {
                                        "type": "CallExpression",
                                        "start": 22759,
                                        "end": 22780,
                                        "loc": {
                                          "start": {
                                            "line": 537,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 537,
                                            "column": 52
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 22759,
                                          "end": 22778,
                                          "loc": {
                                            "start": {
                                              "line": 537,
                                              "column": 31
                                            },
                                            "end": {
                                              "line": 537,
                                              "column": 50
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 22759,
                                            "end": 22772,
                                            "loc": {
                                              "start": {
                                                "line": 537,
                                                "column": 31
                                              },
                                              "end": {
                                                "line": 537,
                                                "column": 44
                                              }
                                            },
                                            "name": "mousePosition"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 22773,
                                            "end": 22778,
                                            "loc": {
                                              "start": {
                                                "line": 537,
                                                "column": 45
                                              },
                                              "end": {
                                                "line": 537,
                                                "column": 50
                                              }
                                            },
                                            "name": "clone"
                                          },
                                          "computed": false
                                        },
                                        "arguments": []
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 22794,
                                  "end": 22864,
                                  "loc": {
                                    "start": {
                                      "line": 538,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 538,
                                      "column": 82
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 22798,
                                    "end": 22819,
                                    "loc": {
                                      "start": {
                                        "line": 538,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 538,
                                        "column": 37
                                      }
                                    },
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 22798,
                                      "end": 22806,
                                      "loc": {
                                        "start": {
                                          "line": 538,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 538,
                                          "column": 24
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 22798,
                                        "end": 22801,
                                        "loc": {
                                          "start": {
                                            "line": 538,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 538,
                                            "column": 19
                                          }
                                        },
                                        "name": "obj"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 22802,
                                        "end": 22806,
                                        "loc": {
                                          "start": {
                                            "line": 538,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 538,
                                            "column": 24
                                          }
                                        },
                                        "name": "name"
                                      },
                                      "computed": false
                                    },
                                    "operator": "!==",
                                    "right": {
                                      "type": "Literal",
                                      "start": 22811,
                                      "end": 22819,
                                      "loc": {
                                        "start": {
                                          "line": 538,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 538,
                                          "column": 37
                                        }
                                      },
                                      "value": "center",
                                      "rawValue": "center",
                                      "raw": "'center'"
                                    }
                                  },
                                  "consequent": {
                                    "type": "ExpressionStatement",
                                    "start": 22821,
                                    "end": 22864,
                                    "loc": {
                                      "start": {
                                        "line": 538,
                                        "column": 39
                                      },
                                      "end": {
                                        "line": 538,
                                        "column": 82
                                      }
                                    },
                                    "expression": {
                                      "type": "CallExpression",
                                      "start": 22821,
                                      "end": 22863,
                                      "loc": {
                                        "start": {
                                          "line": 538,
                                          "column": 39
                                        },
                                        "end": {
                                          "line": 538,
                                          "column": 81
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 22821,
                                        "end": 22837,
                                        "loc": {
                                          "start": {
                                            "line": 538,
                                            "column": 39
                                          },
                                          "end": {
                                            "line": 538,
                                            "column": 55
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 22821,
                                          "end": 22833,
                                          "loc": {
                                            "start": {
                                              "line": 538,
                                              "column": 39
                                            },
                                            "end": {
                                              "line": 538,
                                              "column": 51
                                            }
                                          },
                                          "name": "snapPosition"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 22834,
                                          "end": 22837,
                                          "loc": {
                                            "start": {
                                              "line": 538,
                                              "column": 52
                                            },
                                            "end": {
                                              "line": 538,
                                              "column": 55
                                            }
                                          },
                                          "name": "add"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 22838,
                                          "end": 22862,
                                          "loc": {
                                            "start": {
                                              "line": 538,
                                              "column": 56
                                            },
                                            "end": {
                                              "line": 538,
                                              "column": 80
                                            }
                                          },
                                          "name": "fromMousePositionToPoint"
                                        }
                                      ]
                                    }
                                  },
                                  "alternate": null
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 22877,
                                  "end": 23047,
                                  "loc": {
                                    "start": {
                                      "line": 539,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 541,
                                      "column": 14
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 22881,
                                      "end": 23046,
                                      "loc": {
                                        "start": {
                                          "line": 539,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 541,
                                          "column": 13
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 22881,
                                        "end": 22893,
                                        "loc": {
                                          "start": {
                                            "line": 539,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 539,
                                            "column": 28
                                          }
                                        },
                                        "name": "snappedPoint"
                                      },
                                      "init": {
                                        "type": "CallExpression",
                                        "start": 22896,
                                        "end": 23046,
                                        "loc": {
                                          "start": {
                                            "line": 539,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 541,
                                            "column": 13
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 22896,
                                          "end": 22920,
                                          "loc": {
                                            "start": {
                                              "line": 539,
                                              "column": 31
                                            },
                                            "end": {
                                              "line": 539,
                                              "column": 55
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 22896,
                                            "end": 22900,
                                            "loc": {
                                              "start": {
                                                "line": 539,
                                                "column": 31
                                              },
                                              "end": {
                                                "line": 539,
                                                "column": 35
                                              }
                                            },
                                            "name": "self"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 22901,
                                            "end": 22920,
                                            "loc": {
                                              "start": {
                                                "line": 539,
                                                "column": 36
                                              },
                                              "end": {
                                                "line": 539,
                                                "column": 55
                                              }
                                            },
                                            "name": "getClosestSnapPoint"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 22938,
                                            "end": 22950,
                                            "loc": {
                                              "start": {
                                                "line": 540,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 540,
                                                "column": 28
                                              }
                                            },
                                            "name": "snapPosition"
                                          },
                                          {
                                            "type": "Identifier",
                                            "start": 22952,
                                            "end": 22963,
                                            "loc": {
                                              "start": {
                                                "line": 540,
                                                "column": 30
                                              },
                                              "end": {
                                                "line": 540,
                                                "column": 41
                                              }
                                            },
                                            "name": "maxDistance"
                                          },
                                          {
                                            "type": "ArrowFunctionExpression",
                                            "start": 22965,
                                            "end": 23032,
                                            "loc": {
                                              "start": {
                                                "line": 540,
                                                "column": 43
                                              },
                                              "end": {
                                                "line": 540,
                                                "column": 110
                                              }
                                            },
                                            "id": null,
                                            "generator": false,
                                            "expression": true,
                                            "async": false,
                                            "params": [
                                              {
                                                "type": "Identifier",
                                                "start": 22965,
                                                "end": 22968,
                                                "loc": {
                                                  "start": {
                                                    "line": 540,
                                                    "column": 43
                                                  },
                                                  "end": {
                                                    "line": 540,
                                                    "column": 46
                                                  }
                                                },
                                                "name": "arg"
                                              }
                                            ],
                                            "body": {
                                              "type": "BinaryExpression",
                                              "start": 22972,
                                              "end": 23032,
                                              "loc": {
                                                "start": {
                                                  "line": 540,
                                                  "column": 50
                                                },
                                                "end": {
                                                  "line": 540,
                                                  "column": 110
                                                }
                                              },
                                              "left": {
                                                "type": "CallExpression",
                                                "start": 22972,
                                                "end": 23025,
                                                "loc": {
                                                  "start": {
                                                    "line": 540,
                                                    "column": 50
                                                  },
                                                  "end": {
                                                    "line": 540,
                                                    "column": 103
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 22972,
                                                  "end": 23014,
                                                  "loc": {
                                                    "start": {
                                                      "line": 540,
                                                      "column": 50
                                                    },
                                                    "end": {
                                                      "line": 540,
                                                      "column": 92
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "CallExpression",
                                                    "start": 22972,
                                                    "end": 23006,
                                                    "loc": {
                                                      "start": {
                                                        "line": 540,
                                                        "column": 50
                                                      },
                                                      "end": {
                                                        "line": 540,
                                                        "column": 84
                                                      }
                                                    },
                                                    "callee": {
                                                      "type": "MemberExpression",
                                                      "start": 22972,
                                                      "end": 23001,
                                                      "loc": {
                                                        "start": {
                                                          "line": 540,
                                                          "column": 50
                                                        },
                                                        "end": {
                                                          "line": 540,
                                                          "column": 79
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "Identifier",
                                                        "start": 22972,
                                                        "end": 22978,
                                                        "loc": {
                                                          "start": {
                                                            "line": 540,
                                                            "column": 50
                                                          },
                                                          "end": {
                                                            "line": 540,
                                                            "column": 56
                                                          }
                                                        },
                                                        "name": "Sketch"
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 22979,
                                                        "end": 23001,
                                                        "loc": {
                                                          "start": {
                                                            "line": 540,
                                                            "column": 57
                                                          },
                                                          "end": {
                                                            "line": 540,
                                                            "column": 79
                                                          }
                                                        },
                                                        "name": "ForObjectsWithChildren"
                                                      },
                                                      "computed": false
                                                    },
                                                    "arguments": [
                                                      {
                                                        "type": "Identifier",
                                                        "start": 23002,
                                                        "end": 23005,
                                                        "loc": {
                                                          "start": {
                                                            "line": 540,
                                                            "column": 80
                                                          },
                                                          "end": {
                                                            "line": 540,
                                                            "column": 83
                                                          }
                                                        },
                                                        "name": "arg"
                                                      }
                                                    ]
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 23007,
                                                    "end": 23014,
                                                    "loc": {
                                                      "start": {
                                                        "line": 540,
                                                        "column": 85
                                                      },
                                                      "end": {
                                                        "line": 540,
                                                        "column": 92
                                                      }
                                                    },
                                                    "name": "indexOf"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 23015,
                                                    "end": 23024,
                                                    "loc": {
                                                      "start": {
                                                        "line": 540,
                                                        "column": 93
                                                      },
                                                      "end": {
                                                        "line": 540,
                                                        "column": 102
                                                      }
                                                    },
                                                    "name": "geomPoint"
                                                  }
                                                ]
                                              },
                                              "operator": "!==",
                                              "right": {
                                                "type": "UnaryExpression",
                                                "start": 23030,
                                                "end": 23032,
                                                "loc": {
                                                  "start": {
                                                    "line": 540,
                                                    "column": 108
                                                  },
                                                  "end": {
                                                    "line": 540,
                                                    "column": 110
                                                  }
                                                },
                                                "operator": "-",
                                                "prefix": true,
                                                "argument": {
                                                  "type": "Literal",
                                                  "start": 23031,
                                                  "end": 23032,
                                                  "loc": {
                                                    "start": {
                                                      "line": 540,
                                                      "column": 109
                                                    },
                                                    "end": {
                                                      "line": 540,
                                                      "column": 110
                                                    }
                                                  },
                                                  "value": 1,
                                                  "rawValue": 1,
                                                  "raw": "1"
                                                }
                                              }
                                            }
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 23061,
                                  "end": 23361,
                                  "loc": {
                                    "start": {
                                      "line": 543,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 547,
                                      "column": 13
                                    }
                                  },
                                  "test": {
                                    "type": "LogicalExpression",
                                    "start": 23065,
                                    "end": 23137,
                                    "loc": {
                                      "start": {
                                        "line": 543,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 543,
                                        "column": 88
                                      }
                                    },
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 23065,
                                      "end": 23087,
                                      "loc": {
                                        "start": {
                                          "line": 543,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 543,
                                          "column": 38
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 23065,
                                        "end": 23077,
                                        "loc": {
                                          "start": {
                                            "line": 543,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 543,
                                            "column": 28
                                          }
                                        },
                                        "name": "snappedPoint"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 23078,
                                        "end": 23087,
                                        "loc": {
                                          "start": {
                                            "line": 543,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 543,
                                            "column": 38
                                          }
                                        },
                                        "name": "isSnapped"
                                      },
                                      "computed": false
                                    },
                                    "operator": "&&",
                                    "right": {
                                      "type": "BinaryExpression",
                                      "start": 23091,
                                      "end": 23137,
                                      "loc": {
                                        "start": {
                                          "line": 543,
                                          "column": 42
                                        },
                                        "end": {
                                          "line": 543,
                                          "column": 88
                                        }
                                      },
                                      "left": {
                                        "type": "CallExpression",
                                        "start": 23091,
                                        "end": 23126,
                                        "loc": {
                                          "start": {
                                            "line": 543,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 543,
                                            "column": 77
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 23091,
                                          "end": 23124,
                                          "loc": {
                                            "start": {
                                              "line": 543,
                                              "column": 42
                                            },
                                            "end": {
                                              "line": 543,
                                              "column": 75
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 23091,
                                            "end": 23117,
                                            "loc": {
                                              "start": {
                                                "line": 543,
                                                "column": 42
                                              },
                                              "end": {
                                                "line": 543,
                                                "column": 68
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 23091,
                                              "end": 23103,
                                              "loc": {
                                                "start": {
                                                  "line": 543,
                                                  "column": 42
                                                },
                                                "end": {
                                                  "line": 543,
                                                  "column": 54
                                                }
                                              },
                                              "name": "snappedPoint"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 23104,
                                              "end": 23117,
                                              "loc": {
                                                "start": {
                                                  "line": 543,
                                                  "column": 55
                                                },
                                                "end": {
                                                  "line": 543,
                                                  "column": 68
                                                }
                                              },
                                              "name": "snappingShift"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 23118,
                                            "end": 23124,
                                            "loc": {
                                              "start": {
                                                "line": 543,
                                                "column": 69
                                              },
                                              "end": {
                                                "line": 543,
                                                "column": 75
                                              }
                                            },
                                            "name": "length"
                                          },
                                          "computed": false
                                        },
                                        "arguments": []
                                      },
                                      "operator": "<",
                                      "right": {
                                        "type": "Identifier",
                                        "start": 23129,
                                        "end": 23137,
                                        "loc": {
                                          "start": {
                                            "line": 543,
                                            "column": 80
                                          },
                                          "end": {
                                            "line": 543,
                                            "column": 88
                                          }
                                        },
                                        "name": "distance"
                                      }
                                    }
                                  },
                                  "consequent": {
                                    "type": "BlockStatement",
                                    "start": 23139,
                                    "end": 23361,
                                    "loc": {
                                      "start": {
                                        "line": 543,
                                        "column": 90
                                      },
                                      "end": {
                                        "line": 547,
                                        "column": 13
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 23157,
                                        "end": 23204,
                                        "loc": {
                                          "start": {
                                            "line": 544,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 544,
                                            "column": 63
                                          }
                                        },
                                        "expression": {
                                          "type": "AssignmentExpression",
                                          "start": 23157,
                                          "end": 23203,
                                          "loc": {
                                            "start": {
                                              "line": 544,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 544,
                                              "column": 62
                                            }
                                          },
                                          "operator": "=",
                                          "left": {
                                            "type": "Identifier",
                                            "start": 23157,
                                            "end": 23165,
                                            "loc": {
                                              "start": {
                                                "line": 544,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 544,
                                                "column": 24
                                              }
                                            },
                                            "name": "distance"
                                          },
                                          "right": {
                                            "type": "CallExpression",
                                            "start": 23168,
                                            "end": 23203,
                                            "loc": {
                                              "start": {
                                                "line": 544,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 544,
                                                "column": 62
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 23168,
                                              "end": 23201,
                                              "loc": {
                                                "start": {
                                                  "line": 544,
                                                  "column": 27
                                                },
                                                "end": {
                                                  "line": 544,
                                                  "column": 60
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 23168,
                                                "end": 23194,
                                                "loc": {
                                                  "start": {
                                                    "line": 544,
                                                    "column": 27
                                                  },
                                                  "end": {
                                                    "line": 544,
                                                    "column": 53
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 23168,
                                                  "end": 23180,
                                                  "loc": {
                                                    "start": {
                                                      "line": 544,
                                                      "column": 27
                                                    },
                                                    "end": {
                                                      "line": 544,
                                                      "column": 39
                                                    }
                                                  },
                                                  "name": "snappedPoint"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 23181,
                                                  "end": 23194,
                                                  "loc": {
                                                    "start": {
                                                      "line": 544,
                                                      "column": 40
                                                    },
                                                    "end": {
                                                      "line": 544,
                                                      "column": 53
                                                    }
                                                  },
                                                  "name": "snappingShift"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 23195,
                                                "end": 23201,
                                                "loc": {
                                                  "start": {
                                                    "line": 544,
                                                    "column": 54
                                                  },
                                                  "end": {
                                                    "line": 544,
                                                    "column": 60
                                                  }
                                                },
                                                "name": "length"
                                              },
                                              "computed": false
                                            },
                                            "arguments": []
                                          }
                                        }
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 23221,
                                        "end": 23261,
                                        "loc": {
                                          "start": {
                                            "line": 545,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 545,
                                            "column": 56
                                          }
                                        },
                                        "expression": {
                                          "type": "AssignmentExpression",
                                          "start": 23221,
                                          "end": 23260,
                                          "loc": {
                                            "start": {
                                              "line": 545,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 545,
                                              "column": 55
                                            }
                                          },
                                          "operator": "=",
                                          "left": {
                                            "type": "Identifier",
                                            "start": 23221,
                                            "end": 23229,
                                            "loc": {
                                              "start": {
                                                "line": 545,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 545,
                                                "column": 24
                                              }
                                            },
                                            "name": "toReturn"
                                          },
                                          "right": {
                                            "type": "MemberExpression",
                                            "start": 23232,
                                            "end": 23260,
                                            "loc": {
                                              "start": {
                                                "line": 545,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 545,
                                                "column": 55
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 23232,
                                              "end": 23244,
                                              "loc": {
                                                "start": {
                                                  "line": 545,
                                                  "column": 27
                                                },
                                                "end": {
                                                  "line": 545,
                                                  "column": 39
                                                }
                                              },
                                              "name": "snappedPoint"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 23245,
                                              "end": 23260,
                                              "loc": {
                                                "start": {
                                                  "line": 545,
                                                  "column": 40
                                                },
                                                "end": {
                                                  "line": 545,
                                                  "column": 55
                                                }
                                              },
                                              "name": "snappedPosition"
                                            },
                                            "computed": false
                                          }
                                        }
                                      },
                                      {
                                        "type": "IfStatement",
                                        "start": 23278,
                                        "end": 23347,
                                        "loc": {
                                          "start": {
                                            "line": 546,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 546,
                                            "column": 85
                                          }
                                        },
                                        "test": {
                                          "type": "UnaryExpression",
                                          "start": 23282,
                                          "end": 23306,
                                          "loc": {
                                            "start": {
                                              "line": 546,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 546,
                                              "column": 44
                                            }
                                          },
                                          "operator": "!",
                                          "prefix": true,
                                          "argument": {
                                            "type": "BinaryExpression",
                                            "start": 23284,
                                            "end": 23305,
                                            "loc": {
                                              "start": {
                                                "line": 546,
                                                "column": 22
                                              },
                                              "end": {
                                                "line": 546,
                                                "column": 43
                                              }
                                            },
                                            "left": {
                                              "type": "Identifier",
                                              "start": 23284,
                                              "end": 23287,
                                              "loc": {
                                                "start": {
                                                  "line": 546,
                                                  "column": 22
                                                },
                                                "end": {
                                                  "line": 546,
                                                  "column": 25
                                                }
                                              },
                                              "name": "obj"
                                            },
                                            "operator": "instanceof",
                                            "right": {
                                              "type": "Identifier",
                                              "start": 23300,
                                              "end": 23305,
                                              "loc": {
                                                "start": {
                                                  "line": 546,
                                                  "column": 38
                                                },
                                                "end": {
                                                  "line": 546,
                                                  "column": 43
                                                }
                                              },
                                              "name": "Point"
                                            },
                                            "parenthesizedExpression": true
                                          }
                                        },
                                        "consequent": {
                                          "type": "ExpressionStatement",
                                          "start": 23308,
                                          "end": 23347,
                                          "loc": {
                                            "start": {
                                              "line": 546,
                                              "column": 46
                                            },
                                            "end": {
                                              "line": 546,
                                              "column": 85
                                            }
                                          },
                                          "expression": {
                                            "type": "CallExpression",
                                            "start": 23308,
                                            "end": 23346,
                                            "loc": {
                                              "start": {
                                                "line": 546,
                                                "column": 46
                                              },
                                              "end": {
                                                "line": 546,
                                                "column": 84
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 23308,
                                              "end": 23320,
                                              "loc": {
                                                "start": {
                                                  "line": 546,
                                                  "column": 46
                                                },
                                                "end": {
                                                  "line": 546,
                                                  "column": 58
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 23308,
                                                "end": 23316,
                                                "loc": {
                                                  "start": {
                                                    "line": 546,
                                                    "column": 46
                                                  },
                                                  "end": {
                                                    "line": 546,
                                                    "column": 54
                                                  }
                                                },
                                                "name": "toReturn"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 23317,
                                                "end": 23320,
                                                "loc": {
                                                  "start": {
                                                    "line": 546,
                                                    "column": 55
                                                  },
                                                  "end": {
                                                    "line": 546,
                                                    "column": 58
                                                  }
                                                },
                                                "name": "sub"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 23321,
                                                "end": 23345,
                                                "loc": {
                                                  "start": {
                                                    "line": 546,
                                                    "column": 59
                                                  },
                                                  "end": {
                                                    "line": 546,
                                                    "column": 83
                                                  }
                                                },
                                                "name": "fromMousePositionToPoint"
                                              }
                                            ]
                                          }
                                        },
                                        "alternate": null
                                      }
                                    ]
                                  },
                                  "alternate": null
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 23383,
                      "end": 23399,
                      "loc": {
                        "start": {
                          "line": 550,
                          "column": 8
                        },
                        "end": {
                          "line": 550,
                          "column": 24
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 23390,
                        "end": 23398,
                        "loc": {
                          "start": {
                            "line": 550,
                            "column": 15
                          },
                          "end": {
                            "line": 550,
                            "column": 23
                          }
                        },
                        "name": "toReturn"
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 23411,
              "end": 23481,
              "loc": {
                "start": {
                  "line": 553,
                  "column": 4
                },
                "end": {
                  "line": 555,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 23411,
                "end": 23425,
                "loc": {
                  "start": {
                    "line": 553,
                    "column": 4
                  },
                  "end": {
                    "line": 553,
                    "column": 18
                  }
                },
                "name": "showDimensions"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 23425,
                "end": 23481,
                "loc": {
                  "start": {
                    "line": 553,
                    "column": 18
                  },
                  "end": {
                    "line": 555,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 23428,
                  "end": 23481,
                  "loc": {
                    "start": {
                      "line": 553,
                      "column": 21
                    },
                    "end": {
                      "line": 555,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 23438,
                      "end": 23475,
                      "loc": {
                        "start": {
                          "line": 554,
                          "column": 8
                        },
                        "end": {
                          "line": 554,
                          "column": 45
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 23438,
                        "end": 23474,
                        "loc": {
                          "start": {
                            "line": 554,
                            "column": 8
                          },
                          "end": {
                            "line": 554,
                            "column": 44
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 23438,
                          "end": 23455,
                          "loc": {
                            "start": {
                              "line": 554,
                              "column": 8
                            },
                            "end": {
                              "line": 554,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 23438,
                            "end": 23442,
                            "loc": {
                              "start": {
                                "line": 554,
                                "column": 8
                              },
                              "end": {
                                "line": 554,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 23443,
                            "end": 23455,
                            "loc": {
                              "start": {
                                "line": 554,
                                "column": 13
                              },
                              "end": {
                                "line": 554,
                                "column": 25
                              }
                            },
                            "name": "addAuxObject"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 23456,
                            "end": 23473,
                            "loc": {
                              "start": {
                                "line": 554,
                                "column": 26
                              },
                              "end": {
                                "line": 554,
                                "column": 43
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 23456,
                              "end": 23460,
                              "loc": {
                                "start": {
                                  "line": 554,
                                  "column": 26
                                },
                                "end": {
                                  "line": 554,
                                  "column": 30
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 23461,
                              "end": 23473,
                              "loc": {
                                "start": {
                                  "line": 554,
                                  "column": 31
                                },
                                "end": {
                                  "line": 554,
                                  "column": 43
                                }
                              },
                              "name": "__dimensions"
                            },
                            "computed": false
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 23487,
              "end": 23560,
              "loc": {
                "start": {
                  "line": 557,
                  "column": 4
                },
                "end": {
                  "line": 559,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 23487,
                "end": 23501,
                "loc": {
                  "start": {
                    "line": 557,
                    "column": 4
                  },
                  "end": {
                    "line": 557,
                    "column": 18
                  }
                },
                "name": "hideDimensions"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 23501,
                "end": 23560,
                "loc": {
                  "start": {
                    "line": 557,
                    "column": 18
                  },
                  "end": {
                    "line": 559,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 23504,
                  "end": 23560,
                  "loc": {
                    "start": {
                      "line": 557,
                      "column": 21
                    },
                    "end": {
                      "line": 559,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 23514,
                      "end": 23554,
                      "loc": {
                        "start": {
                          "line": 558,
                          "column": 8
                        },
                        "end": {
                          "line": 558,
                          "column": 48
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 23514,
                        "end": 23553,
                        "loc": {
                          "start": {
                            "line": 558,
                            "column": 8
                          },
                          "end": {
                            "line": 558,
                            "column": 47
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 23514,
                          "end": 23534,
                          "loc": {
                            "start": {
                              "line": 558,
                              "column": 8
                            },
                            "end": {
                              "line": 558,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 23514,
                            "end": 23518,
                            "loc": {
                              "start": {
                                "line": 558,
                                "column": 8
                              },
                              "end": {
                                "line": 558,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 23519,
                            "end": 23534,
                            "loc": {
                              "start": {
                                "line": 558,
                                "column": 13
                              },
                              "end": {
                                "line": 558,
                                "column": 28
                              }
                            },
                            "name": "removeAuxObject"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 23535,
                            "end": 23552,
                            "loc": {
                              "start": {
                                "line": 558,
                                "column": 29
                              },
                              "end": {
                                "line": 558,
                                "column": 46
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 23535,
                              "end": 23539,
                              "loc": {
                                "start": {
                                  "line": 558,
                                  "column": 29
                                },
                                "end": {
                                  "line": 558,
                                  "column": 33
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 23540,
                              "end": 23552,
                              "loc": {
                                "start": {
                                  "line": 558,
                                  "column": 34
                                },
                                "end": {
                                  "line": 558,
                                  "column": 46
                                }
                              },
                              "name": "__dimensions"
                            },
                            "computed": false
                          }
                        ]
                      }
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " intercept graphical objects created on the server",
                  "start": 23566,
                  "end": 23618,
                  "loc": {
                    "start": {
                      "line": 561,
                      "column": 4
                    },
                    "end": {
                      "line": 561,
                      "column": 56
                    }
                  },
                  "range": [
                    23566,
                    23618
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 23623,
              "end": 26796,
              "loc": {
                "start": {
                  "line": 562,
                  "column": 4
                },
                "end": {
                  "line": 632,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 23623,
                "end": 23646,
                "loc": {
                  "start": {
                    "line": 562,
                    "column": 4
                  },
                  "end": {
                    "line": 562,
                    "column": 27
                  }
                },
                "name": "updateDimensionsFactory",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 23646,
                "end": 26796,
                "loc": {
                  "start": {
                    "line": 562,
                    "column": 27
                  },
                  "end": {
                    "line": 632,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 23647,
                    "end": 23652,
                    "loc": {
                      "start": {
                        "line": 562,
                        "column": 28
                      },
                      "end": {
                        "line": 562,
                        "column": 33
                      }
                    },
                    "name": "input"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 23654,
                  "end": 26796,
                  "loc": {
                    "start": {
                      "line": 562,
                      "column": 35
                    },
                    "end": {
                      "line": 632,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 23664,
                      "end": 23686,
                      "loc": {
                        "start": {
                          "line": 563,
                          "column": 8
                        },
                        "end": {
                          "line": 563,
                          "column": 30
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 23668,
                          "end": 23685,
                          "loc": {
                            "start": {
                              "line": 563,
                              "column": 12
                            },
                            "end": {
                              "line": 563,
                              "column": 29
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 23668,
                            "end": 23672,
                            "loc": {
                              "start": {
                                "line": 563,
                                "column": 12
                              },
                              "end": {
                                "line": 563,
                                "column": 16
                              }
                            },
                            "name": "data"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 23675,
                            "end": 23685,
                            "loc": {
                              "start": {
                                "line": 563,
                                "column": 19
                              },
                              "end": {
                                "line": 563,
                                "column": 29
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 23675,
                              "end": 23680,
                              "loc": {
                                "start": {
                                  "line": 563,
                                  "column": 19
                                },
                                "end": {
                                  "line": 563,
                                  "column": 24
                                }
                              },
                              "name": "input"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 23681,
                              "end": 23685,
                              "loc": {
                                "start": {
                                  "line": 563,
                                  "column": 25
                                },
                                "end": {
                                  "line": 563,
                                  "column": 29
                                }
                              },
                              "name": "data"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 23695,
                      "end": 23760,
                      "loc": {
                        "start": {
                          "line": 564,
                          "column": 8
                        },
                        "end": {
                          "line": 564,
                          "column": 73
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 23699,
                          "end": 23759,
                          "loc": {
                            "start": {
                              "line": 564,
                              "column": 12
                            },
                            "end": {
                              "line": 564,
                              "column": 72
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 23699,
                            "end": 23711,
                            "loc": {
                              "start": {
                                "line": 564,
                                "column": 12
                              },
                              "end": {
                                "line": 564,
                                "column": 24
                              }
                            },
                            "name": "worldToLocal"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 23714,
                            "end": 23759,
                            "loc": {
                              "start": {
                                "line": 564,
                                "column": 27
                              },
                              "end": {
                                "line": 564,
                                "column": 72
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 23714,
                              "end": 23746,
                              "loc": {
                                "start": {
                                  "line": 564,
                                  "column": 27
                                },
                                "end": {
                                  "line": 564,
                                  "column": 59
                                }
                              },
                              "object": {
                                "type": "NewExpression",
                                "start": 23715,
                                "end": 23734,
                                "loc": {
                                  "start": {
                                    "line": 564,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 564,
                                    "column": 47
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 23719,
                                  "end": 23732,
                                  "loc": {
                                    "start": {
                                      "line": 564,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 564,
                                      "column": 45
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 23719,
                                    "end": 23724,
                                    "loc": {
                                      "start": {
                                        "line": 564,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 564,
                                        "column": 37
                                      }
                                    },
                                    "name": "THREE"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 23725,
                                    "end": 23732,
                                    "loc": {
                                      "start": {
                                        "line": 564,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 564,
                                        "column": 45
                                      }
                                    },
                                    "name": "Matrix4"
                                  },
                                  "computed": false
                                },
                                "arguments": [],
                                "parenthesizedExpression": true
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 23736,
                                "end": 23746,
                                "loc": {
                                  "start": {
                                    "line": 564,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 564,
                                    "column": 59
                                  }
                                },
                                "name": "getInverse"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 23747,
                                "end": 23758,
                                "loc": {
                                  "start": {
                                    "line": 564,
                                    "column": 60
                                  },
                                  "end": {
                                    "line": 564,
                                    "column": 71
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 23747,
                                  "end": 23751,
                                  "loc": {
                                    "start": {
                                      "line": 564,
                                      "column": 60
                                    },
                                    "end": {
                                      "line": 564,
                                      "column": 64
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 23752,
                                  "end": 23758,
                                  "loc": {
                                    "start": {
                                      "line": 564,
                                      "column": 65
                                    },
                                    "end": {
                                      "line": 564,
                                      "column": 71
                                    }
                                  },
                                  "name": "matrix"
                                },
                                "computed": false
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "SwitchStatement",
                      "start": 23770,
                      "end": 26790,
                      "loc": {
                        "start": {
                          "line": 566,
                          "column": 8
                        },
                        "end": {
                          "line": 631,
                          "column": 9
                        }
                      },
                      "discriminant": {
                        "type": "MemberExpression",
                        "start": 23778,
                        "end": 23788,
                        "loc": {
                          "start": {
                            "line": 566,
                            "column": 16
                          },
                          "end": {
                            "line": 566,
                            "column": 26
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 23778,
                          "end": 23783,
                          "loc": {
                            "start": {
                              "line": 566,
                              "column": 16
                            },
                            "end": {
                              "line": 566,
                              "column": 21
                            }
                          },
                          "name": "input"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 23784,
                          "end": 23788,
                          "loc": {
                            "start": {
                              "line": 566,
                              "column": 22
                            },
                            "end": {
                              "line": 566,
                              "column": 26
                            }
                          },
                          "name": "type"
                        },
                        "computed": false
                      },
                      "cases": [
                        {
                          "type": "SwitchCase",
                          "start": 23804,
                          "end": 25063,
                          "loc": {
                            "start": {
                              "line": 567,
                              "column": 12
                            },
                            "end": {
                              "line": 593,
                              "column": 22
                            }
                          },
                          "consequent": [
                            {
                              "type": "VariableDeclaration",
                              "start": 23883,
                              "end": 23967,
                              "loc": {
                                "start": {
                                  "line": 569,
                                  "column": 16
                                },
                                "end": {
                                  "line": 569,
                                  "column": 100
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 23887,
                                  "end": 23966,
                                  "loc": {
                                    "start": {
                                      "line": 569,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 569,
                                      "column": 99
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 23887,
                                    "end": 23890,
                                    "loc": {
                                      "start": {
                                        "line": 569,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 569,
                                        "column": 23
                                      }
                                    },
                                    "name": "pos",
                                    "leadingComments": null
                                  },
                                  "init": {
                                    "type": "CallExpression",
                                    "start": 23893,
                                    "end": 23966,
                                    "loc": {
                                      "start": {
                                        "line": 569,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 569,
                                        "column": 99
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 23893,
                                      "end": 23952,
                                      "loc": {
                                        "start": {
                                          "line": 569,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 569,
                                          "column": 85
                                        }
                                      },
                                      "object": {
                                        "type": "CallExpression",
                                        "start": 23893,
                                        "end": 23939,
                                        "loc": {
                                          "start": {
                                            "line": 569,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 569,
                                            "column": 72
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 23893,
                                          "end": 23924,
                                          "loc": {
                                            "start": {
                                              "line": 569,
                                              "column": 26
                                            },
                                            "end": {
                                              "line": 569,
                                              "column": 57
                                            }
                                          },
                                          "object": {
                                            "type": "NewExpression",
                                            "start": 23894,
                                            "end": 23913,
                                            "loc": {
                                              "start": {
                                                "line": 569,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 569,
                                                "column": 46
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 23898,
                                              "end": 23911,
                                              "loc": {
                                                "start": {
                                                  "line": 569,
                                                  "column": 31
                                                },
                                                "end": {
                                                  "line": 569,
                                                  "column": 44
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 23898,
                                                "end": 23903,
                                                "loc": {
                                                  "start": {
                                                    "line": 569,
                                                    "column": 31
                                                  },
                                                  "end": {
                                                    "line": 569,
                                                    "column": 36
                                                  }
                                                },
                                                "name": "THREE"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 23904,
                                                "end": 23911,
                                                "loc": {
                                                  "start": {
                                                    "line": 569,
                                                    "column": 37
                                                  },
                                                  "end": {
                                                    "line": 569,
                                                    "column": 44
                                                  }
                                                },
                                                "name": "Vector3"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [],
                                            "parenthesizedExpression": true
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 23915,
                                            "end": 23924,
                                            "loc": {
                                              "start": {
                                                "line": 569,
                                                "column": 48
                                              },
                                              "end": {
                                                "line": 569,
                                                "column": 57
                                              }
                                            },
                                            "name": "fromArray"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "MemberExpression",
                                            "start": 23925,
                                            "end": 23938,
                                            "loc": {
                                              "start": {
                                                "line": 569,
                                                "column": 58
                                              },
                                              "end": {
                                                "line": 569,
                                                "column": 71
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 23925,
                                              "end": 23929,
                                              "loc": {
                                                "start": {
                                                  "line": 569,
                                                  "column": 58
                                                },
                                                "end": {
                                                  "line": 569,
                                                  "column": 62
                                                }
                                              },
                                              "name": "data"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 23930,
                                              "end": 23938,
                                              "loc": {
                                                "start": {
                                                  "line": 569,
                                                  "column": 63
                                                },
                                                "end": {
                                                  "line": 569,
                                                  "column": 71
                                                }
                                              },
                                              "name": "position"
                                            },
                                            "computed": false
                                          }
                                        ]
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 23940,
                                        "end": 23952,
                                        "loc": {
                                          "start": {
                                            "line": 569,
                                            "column": 73
                                          },
                                          "end": {
                                            "line": 569,
                                            "column": 85
                                          }
                                        },
                                        "name": "applyMatrix4"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 23953,
                                        "end": 23965,
                                        "loc": {
                                          "start": {
                                            "line": 569,
                                            "column": 86
                                          },
                                          "end": {
                                            "line": 569,
                                            "column": 98
                                          }
                                        },
                                        "name": "worldToLocal"
                                      }
                                    ]
                                  },
                                  "leadingComments": null
                                }
                              ],
                              "kind": "var",
                              "leadingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "transform to sketch coordinates",
                                  "start": 23833,
                                  "end": 23866,
                                  "loc": {
                                    "start": {
                                      "line": 568,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 568,
                                      "column": 49
                                    }
                                  },
                                  "range": [
                                    23833,
                                    23866
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "VariableDeclaration",
                              "start": 23984,
                              "end": 24070,
                              "loc": {
                                "start": {
                                  "line": 570,
                                  "column": 16
                                },
                                "end": {
                                  "line": 570,
                                  "column": 102
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 23988,
                                  "end": 24069,
                                  "loc": {
                                    "start": {
                                      "line": 570,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 570,
                                      "column": 101
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 23988,
                                    "end": 23991,
                                    "loc": {
                                      "start": {
                                        "line": 570,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 570,
                                        "column": 23
                                      }
                                    },
                                    "name": "dir"
                                  },
                                  "init": {
                                    "type": "CallExpression",
                                    "start": 23994,
                                    "end": 24069,
                                    "loc": {
                                      "start": {
                                        "line": 570,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 570,
                                        "column": 101
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 23994,
                                      "end": 24055,
                                      "loc": {
                                        "start": {
                                          "line": 570,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 570,
                                          "column": 87
                                        }
                                      },
                                      "object": {
                                        "type": "CallExpression",
                                        "start": 23994,
                                        "end": 24036,
                                        "loc": {
                                          "start": {
                                            "line": 570,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 570,
                                            "column": 68
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 23994,
                                          "end": 24025,
                                          "loc": {
                                            "start": {
                                              "line": 570,
                                              "column": 26
                                            },
                                            "end": {
                                              "line": 570,
                                              "column": 57
                                            }
                                          },
                                          "object": {
                                            "type": "NewExpression",
                                            "start": 23995,
                                            "end": 24014,
                                            "loc": {
                                              "start": {
                                                "line": 570,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 570,
                                                "column": 46
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 23999,
                                              "end": 24012,
                                              "loc": {
                                                "start": {
                                                  "line": 570,
                                                  "column": 31
                                                },
                                                "end": {
                                                  "line": 570,
                                                  "column": 44
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 23999,
                                                "end": 24004,
                                                "loc": {
                                                  "start": {
                                                    "line": 570,
                                                    "column": 31
                                                  },
                                                  "end": {
                                                    "line": 570,
                                                    "column": 36
                                                  }
                                                },
                                                "name": "THREE"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 24005,
                                                "end": 24012,
                                                "loc": {
                                                  "start": {
                                                    "line": 570,
                                                    "column": 37
                                                  },
                                                  "end": {
                                                    "line": 570,
                                                    "column": 44
                                                  }
                                                },
                                                "name": "Vector3"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [],
                                            "parenthesizedExpression": true
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 24016,
                                            "end": 24025,
                                            "loc": {
                                              "start": {
                                                "line": 570,
                                                "column": 48
                                              },
                                              "end": {
                                                "line": 570,
                                                "column": 57
                                              }
                                            },
                                            "name": "fromArray"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "MemberExpression",
                                            "start": 24026,
                                            "end": 24035,
                                            "loc": {
                                              "start": {
                                                "line": 570,
                                                "column": 58
                                              },
                                              "end": {
                                                "line": 570,
                                                "column": 67
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 24026,
                                              "end": 24030,
                                              "loc": {
                                                "start": {
                                                  "line": 570,
                                                  "column": 58
                                                },
                                                "end": {
                                                  "line": 570,
                                                  "column": 62
                                                }
                                              },
                                              "name": "data"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 24031,
                                              "end": 24035,
                                              "loc": {
                                                "start": {
                                                  "line": 570,
                                                  "column": 63
                                                },
                                                "end": {
                                                  "line": 570,
                                                  "column": 67
                                                }
                                              },
                                              "name": "axis"
                                            },
                                            "computed": false
                                          }
                                        ]
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 24037,
                                        "end": 24055,
                                        "loc": {
                                          "start": {
                                            "line": 570,
                                            "column": 69
                                          },
                                          "end": {
                                            "line": 570,
                                            "column": 87
                                          }
                                        },
                                        "name": "transformDirection"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 24056,
                                        "end": 24068,
                                        "loc": {
                                          "start": {
                                            "line": 570,
                                            "column": 88
                                          },
                                          "end": {
                                            "line": 570,
                                            "column": 100
                                          }
                                        },
                                        "name": "worldToLocal"
                                      }
                                    ]
                                  }
                                }
                              ],
                              "kind": "var"
                            },
                            {
                              "type": "VariableDeclaration",
                              "start": 24087,
                              "end": 24113,
                              "loc": {
                                "start": {
                                  "line": 571,
                                  "column": 16
                                },
                                "end": {
                                  "line": 571,
                                  "column": 42
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 24091,
                                  "end": 24112,
                                  "loc": {
                                    "start": {
                                      "line": 571,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 571,
                                      "column": 41
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 24091,
                                    "end": 24097,
                                    "loc": {
                                      "start": {
                                        "line": 571,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 571,
                                        "column": 26
                                      }
                                    },
                                    "name": "height"
                                  },
                                  "init": {
                                    "type": "CallExpression",
                                    "start": 24100,
                                    "end": 24112,
                                    "loc": {
                                      "start": {
                                        "line": 571,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 571,
                                        "column": 41
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 24100,
                                      "end": 24110,
                                      "loc": {
                                        "start": {
                                          "line": 571,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 571,
                                          "column": 39
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 24100,
                                        "end": 24103,
                                        "loc": {
                                          "start": {
                                            "line": 571,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 571,
                                            "column": 32
                                          }
                                        },
                                        "name": "dir"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 24104,
                                        "end": 24110,
                                        "loc": {
                                          "start": {
                                            "line": 571,
                                            "column": 33
                                          },
                                          "end": {
                                            "line": 571,
                                            "column": 39
                                          }
                                        },
                                        "name": "length"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                }
                              ],
                              "kind": "var"
                            },
                            {
                              "type": "VariableDeclaration",
                              "start": 24130,
                              "end": 24188,
                              "loc": {
                                "start": {
                                  "line": 572,
                                  "column": 16
                                },
                                "end": {
                                  "line": 572,
                                  "column": 74
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 24134,
                                  "end": 24187,
                                  "loc": {
                                    "start": {
                                      "line": 572,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 572,
                                      "column": 73
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 24134,
                                    "end": 24138,
                                    "loc": {
                                      "start": {
                                        "line": 572,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 572,
                                        "column": 24
                                      }
                                    },
                                    "name": "diam"
                                  },
                                  "init": {
                                    "type": "CallExpression",
                                    "start": 24141,
                                    "end": 24187,
                                    "loc": {
                                      "start": {
                                        "line": 572,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 572,
                                        "column": 73
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 24141,
                                      "end": 24149,
                                      "loc": {
                                        "start": {
                                          "line": 572,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 572,
                                          "column": 35
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 24141,
                                        "end": 24145,
                                        "loc": {
                                          "start": {
                                            "line": 572,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 572,
                                            "column": 31
                                          }
                                        },
                                        "name": "Math"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 24146,
                                        "end": 24149,
                                        "loc": {
                                          "start": {
                                            "line": 572,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 572,
                                            "column": 35
                                          }
                                        },
                                        "name": "max"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "MemberExpression",
                                        "start": 24150,
                                        "end": 24167,
                                        "loc": {
                                          "start": {
                                            "line": 572,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 572,
                                            "column": 53
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 24150,
                                          "end": 24164,
                                          "loc": {
                                            "start": {
                                              "line": 572,
                                              "column": 36
                                            },
                                            "end": {
                                              "line": 572,
                                              "column": 50
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 24150,
                                            "end": 24154,
                                            "loc": {
                                              "start": {
                                                "line": 572,
                                                "column": 36
                                              },
                                              "end": {
                                                "line": 572,
                                                "column": 40
                                              }
                                            },
                                            "name": "data"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 24155,
                                            "end": 24164,
                                            "loc": {
                                              "start": {
                                                "line": 572,
                                                "column": 41
                                              },
                                              "end": {
                                                "line": 572,
                                                "column": 50
                                              }
                                            },
                                            "name": "diameters"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Literal",
                                          "start": 24165,
                                          "end": 24166,
                                          "loc": {
                                            "start": {
                                              "line": 572,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 572,
                                              "column": 52
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        "computed": true
                                      },
                                      {
                                        "type": "MemberExpression",
                                        "start": 24169,
                                        "end": 24186,
                                        "loc": {
                                          "start": {
                                            "line": 572,
                                            "column": 55
                                          },
                                          "end": {
                                            "line": 572,
                                            "column": 72
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 24169,
                                          "end": 24183,
                                          "loc": {
                                            "start": {
                                              "line": 572,
                                              "column": 55
                                            },
                                            "end": {
                                              "line": 572,
                                              "column": 69
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 24169,
                                            "end": 24173,
                                            "loc": {
                                              "start": {
                                                "line": 572,
                                                "column": 55
                                              },
                                              "end": {
                                                "line": 572,
                                                "column": 59
                                              }
                                            },
                                            "name": "data"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 24174,
                                            "end": 24183,
                                            "loc": {
                                              "start": {
                                                "line": 572,
                                                "column": 60
                                              },
                                              "end": {
                                                "line": 572,
                                                "column": 69
                                              }
                                            },
                                            "name": "diameters"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Literal",
                                          "start": 24184,
                                          "end": 24185,
                                          "loc": {
                                            "start": {
                                              "line": 572,
                                              "column": 70
                                            },
                                            "end": {
                                              "line": 572,
                                              "column": 71
                                            }
                                          },
                                          "value": 1,
                                          "rawValue": 1,
                                          "raw": "1"
                                        },
                                        "computed": true
                                      }
                                    ]
                                  }
                                }
                              ],
                              "kind": "var",
                              "trailingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "create two-sided arrow",
                                  "start": 24206,
                                  "end": 24230,
                                  "loc": {
                                    "start": {
                                      "line": 574,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 574,
                                      "column": 40
                                    }
                                  },
                                  "range": [
                                    24206,
                                    24230
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "VariableDeclaration",
                              "start": 24247,
                              "end": 24279,
                              "loc": {
                                "start": {
                                  "line": 575,
                                  "column": 16
                                },
                                "end": {
                                  "line": 575,
                                  "column": 48
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 24251,
                                  "end": 24278,
                                  "loc": {
                                    "start": {
                                      "line": 575,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 575,
                                      "column": 47
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 24251,
                                    "end": 24255,
                                    "loc": {
                                      "start": {
                                        "line": 575,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 575,
                                        "column": 24
                                      }
                                    },
                                    "name": "geom",
                                    "leadingComments": null
                                  },
                                  "init": {
                                    "type": "NewExpression",
                                    "start": 24258,
                                    "end": 24278,
                                    "loc": {
                                      "start": {
                                        "line": 575,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 575,
                                        "column": 47
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 24262,
                                      "end": 24276,
                                      "loc": {
                                        "start": {
                                          "line": 575,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 575,
                                          "column": 45
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 24262,
                                        "end": 24267,
                                        "loc": {
                                          "start": {
                                            "line": 575,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 575,
                                            "column": 36
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 24268,
                                        "end": 24276,
                                        "loc": {
                                          "start": {
                                            "line": 575,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 575,
                                            "column": 45
                                          }
                                        },
                                        "name": "Geometry"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  },
                                  "leadingComments": null
                                }
                              ],
                              "kind": "var",
                              "leadingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "create two-sided arrow",
                                  "start": 24206,
                                  "end": 24230,
                                  "loc": {
                                    "start": {
                                      "line": 574,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 574,
                                      "column": 40
                                    }
                                  },
                                  "range": [
                                    24206,
                                    24230
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 24296,
                              "end": 24528,
                              "loc": {
                                "start": {
                                  "line": 576,
                                  "column": 16
                                },
                                "end": {
                                  "line": 580,
                                  "column": 18
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 24296,
                                "end": 24527,
                                "loc": {
                                  "start": {
                                    "line": 576,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 580,
                                    "column": 17
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 24296,
                                  "end": 24314,
                                  "loc": {
                                    "start": {
                                      "line": 576,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 576,
                                      "column": 34
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 24296,
                                    "end": 24309,
                                    "loc": {
                                      "start": {
                                        "line": 576,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 576,
                                        "column": 29
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 24296,
                                      "end": 24300,
                                      "loc": {
                                        "start": {
                                          "line": 576,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 576,
                                          "column": 20
                                        }
                                      },
                                      "name": "geom"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 24301,
                                      "end": 24309,
                                      "loc": {
                                        "start": {
                                          "line": 576,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 576,
                                          "column": 29
                                        }
                                      },
                                      "name": "vertices"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 24310,
                                    "end": 24314,
                                    "loc": {
                                      "start": {
                                        "line": 576,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 576,
                                        "column": 34
                                      }
                                    },
                                    "name": "push"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "NewExpression",
                                    "start": 24342,
                                    "end": 24379,
                                    "loc": {
                                      "start": {
                                        "line": 577,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 577,
                                        "column": 63
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 24346,
                                      "end": 24359,
                                      "loc": {
                                        "start": {
                                          "line": 577,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 577,
                                          "column": 43
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 24346,
                                        "end": 24351,
                                        "loc": {
                                          "start": {
                                            "line": 577,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 577,
                                            "column": 35
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 24352,
                                        "end": 24359,
                                        "loc": {
                                          "start": {
                                            "line": 577,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 577,
                                            "column": 43
                                          }
                                        },
                                        "name": "Vector3"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 24360,
                                        "end": 24366,
                                        "loc": {
                                          "start": {
                                            "line": 577,
                                            "column": 44
                                          },
                                          "end": {
                                            "line": 577,
                                            "column": 50
                                          }
                                        },
                                        "name": "height"
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 24368,
                                        "end": 24375,
                                        "loc": {
                                          "start": {
                                            "line": 577,
                                            "column": 52
                                          },
                                          "end": {
                                            "line": 577,
                                            "column": 59
                                          }
                                        },
                                        "left": {
                                          "type": "UnaryExpression",
                                          "start": 24368,
                                          "end": 24373,
                                          "loc": {
                                            "start": {
                                              "line": 577,
                                              "column": 52
                                            },
                                            "end": {
                                              "line": 577,
                                              "column": 57
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "Identifier",
                                            "start": 24369,
                                            "end": 24373,
                                            "loc": {
                                              "start": {
                                                "line": 577,
                                                "column": 53
                                              },
                                              "end": {
                                                "line": 577,
                                                "column": 57
                                              }
                                            },
                                            "name": "diam"
                                          }
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Literal",
                                          "start": 24374,
                                          "end": 24375,
                                          "loc": {
                                            "start": {
                                              "line": 577,
                                              "column": 58
                                            },
                                            "end": {
                                              "line": 577,
                                              "column": 59
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 24377,
                                        "end": 24378,
                                        "loc": {
                                          "start": {
                                            "line": 577,
                                            "column": 61
                                          },
                                          "end": {
                                            "line": 577,
                                            "column": 62
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "NewExpression",
                                    "start": 24407,
                                    "end": 24444,
                                    "loc": {
                                      "start": {
                                        "line": 578,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 578,
                                        "column": 63
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 24411,
                                      "end": 24424,
                                      "loc": {
                                        "start": {
                                          "line": 578,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 578,
                                          "column": 43
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 24411,
                                        "end": 24416,
                                        "loc": {
                                          "start": {
                                            "line": 578,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 578,
                                            "column": 35
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 24417,
                                        "end": 24424,
                                        "loc": {
                                          "start": {
                                            "line": 578,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 578,
                                            "column": 43
                                          }
                                        },
                                        "name": "Vector3"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 24425,
                                        "end": 24431,
                                        "loc": {
                                          "start": {
                                            "line": 578,
                                            "column": 44
                                          },
                                          "end": {
                                            "line": 578,
                                            "column": 50
                                          }
                                        },
                                        "name": "height"
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 24434,
                                        "end": 24440,
                                        "loc": {
                                          "start": {
                                            "line": 578,
                                            "column": 53
                                          },
                                          "end": {
                                            "line": 578,
                                            "column": 59
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 24434,
                                          "end": 24438,
                                          "loc": {
                                            "start": {
                                              "line": 578,
                                              "column": 53
                                            },
                                            "end": {
                                              "line": 578,
                                              "column": 57
                                            }
                                          },
                                          "name": "diam"
                                        },
                                        "operator": "/",
                                        "right": {
                                          "type": "Literal",
                                          "start": 24439,
                                          "end": 24440,
                                          "loc": {
                                            "start": {
                                              "line": 578,
                                              "column": 58
                                            },
                                            "end": {
                                              "line": 578,
                                              "column": 59
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 24442,
                                        "end": 24443,
                                        "loc": {
                                          "start": {
                                            "line": 578,
                                            "column": 61
                                          },
                                          "end": {
                                            "line": 578,
                                            "column": 62
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "NewExpression",
                                    "start": 24472,
                                    "end": 24509,
                                    "loc": {
                                      "start": {
                                        "line": 579,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 579,
                                        "column": 63
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 24476,
                                      "end": 24489,
                                      "loc": {
                                        "start": {
                                          "line": 579,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 579,
                                          "column": 43
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 24476,
                                        "end": 24481,
                                        "loc": {
                                          "start": {
                                            "line": 579,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 579,
                                            "column": 35
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 24482,
                                        "end": 24489,
                                        "loc": {
                                          "start": {
                                            "line": 579,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 579,
                                            "column": 43
                                          }
                                        },
                                        "name": "Vector3"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Literal",
                                        "start": 24495,
                                        "end": 24496,
                                        "loc": {
                                          "start": {
                                            "line": 579,
                                            "column": 49
                                          },
                                          "end": {
                                            "line": 579,
                                            "column": 50
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 24504,
                                        "end": 24505,
                                        "loc": {
                                          "start": {
                                            "line": 579,
                                            "column": 58
                                          },
                                          "end": {
                                            "line": 579,
                                            "column": 59
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 24507,
                                        "end": 24508,
                                        "loc": {
                                          "start": {
                                            "line": 579,
                                            "column": 61
                                          },
                                          "end": {
                                            "line": 579,
                                            "column": 62
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  }
                                ]
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 24545,
                              "end": 24671,
                              "loc": {
                                "start": {
                                  "line": 581,
                                  "column": 16
                                },
                                "end": {
                                  "line": 584,
                                  "column": 18
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 24545,
                                "end": 24670,
                                "loc": {
                                  "start": {
                                    "line": 581,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 584,
                                    "column": 17
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 24545,
                                  "end": 24560,
                                  "loc": {
                                    "start": {
                                      "line": 581,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 581,
                                      "column": 31
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 24545,
                                    "end": 24555,
                                    "loc": {
                                      "start": {
                                        "line": 581,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 581,
                                        "column": 26
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 24545,
                                      "end": 24549,
                                      "loc": {
                                        "start": {
                                          "line": 581,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 581,
                                          "column": 20
                                        }
                                      },
                                      "name": "geom"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 24550,
                                      "end": 24555,
                                      "loc": {
                                        "start": {
                                          "line": 581,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 581,
                                          "column": 26
                                        }
                                      },
                                      "name": "faces"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 24556,
                                    "end": 24560,
                                    "loc": {
                                      "start": {
                                        "line": 581,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 581,
                                        "column": 31
                                      }
                                    },
                                    "name": "push"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "NewExpression",
                                    "start": 24582,
                                    "end": 24606,
                                    "loc": {
                                      "start": {
                                        "line": 582,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 582,
                                        "column": 44
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 24586,
                                      "end": 24597,
                                      "loc": {
                                        "start": {
                                          "line": 582,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 582,
                                          "column": 35
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 24586,
                                        "end": 24591,
                                        "loc": {
                                          "start": {
                                            "line": 582,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 582,
                                            "column": 29
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 24592,
                                        "end": 24597,
                                        "loc": {
                                          "start": {
                                            "line": 582,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 582,
                                            "column": 35
                                          }
                                        },
                                        "name": "Face3"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Literal",
                                        "start": 24598,
                                        "end": 24599,
                                        "loc": {
                                          "start": {
                                            "line": 582,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 582,
                                            "column": 37
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 24601,
                                        "end": 24602,
                                        "loc": {
                                          "start": {
                                            "line": 582,
                                            "column": 39
                                          },
                                          "end": {
                                            "line": 582,
                                            "column": 40
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 24604,
                                        "end": 24605,
                                        "loc": {
                                          "start": {
                                            "line": 582,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 582,
                                            "column": 43
                                          }
                                        },
                                        "value": 2,
                                        "rawValue": 2,
                                        "raw": "2"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "NewExpression",
                                    "start": 24628,
                                    "end": 24652,
                                    "loc": {
                                      "start": {
                                        "line": 583,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 583,
                                        "column": 44
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 24632,
                                      "end": 24643,
                                      "loc": {
                                        "start": {
                                          "line": 583,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 583,
                                          "column": 35
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 24632,
                                        "end": 24637,
                                        "loc": {
                                          "start": {
                                            "line": 583,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 583,
                                            "column": 29
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 24638,
                                        "end": 24643,
                                        "loc": {
                                          "start": {
                                            "line": 583,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 583,
                                            "column": 35
                                          }
                                        },
                                        "name": "Face3"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Literal",
                                        "start": 24644,
                                        "end": 24645,
                                        "loc": {
                                          "start": {
                                            "line": 583,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 583,
                                            "column": 37
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 24647,
                                        "end": 24648,
                                        "loc": {
                                          "start": {
                                            "line": 583,
                                            "column": 39
                                          },
                                          "end": {
                                            "line": 583,
                                            "column": 40
                                          }
                                        },
                                        "value": 2,
                                        "rawValue": 2,
                                        "raw": "2"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 24650,
                                        "end": 24651,
                                        "loc": {
                                          "start": {
                                            "line": 583,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 583,
                                            "column": 43
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      }
                                    ]
                                  }
                                ]
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 24688,
                              "end": 24714,
                              "loc": {
                                "start": {
                                  "line": 585,
                                  "column": 16
                                },
                                "end": {
                                  "line": 585,
                                  "column": 42
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 24688,
                                "end": 24713,
                                "loc": {
                                  "start": {
                                    "line": 585,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 585,
                                    "column": 41
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 24688,
                                  "end": 24711,
                                  "loc": {
                                    "start": {
                                      "line": 585,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 585,
                                      "column": 39
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 24688,
                                    "end": 24692,
                                    "loc": {
                                      "start": {
                                        "line": 585,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 585,
                                        "column": 20
                                      }
                                    },
                                    "name": "geom"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 24693,
                                    "end": 24711,
                                    "loc": {
                                      "start": {
                                        "line": 585,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 585,
                                        "column": 39
                                      }
                                    },
                                    "name": "computeFaceNormals"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              }
                            },
                            {
                              "type": "VariableDeclaration",
                              "start": 24732,
                              "end": 24812,
                              "loc": {
                                "start": {
                                  "line": 587,
                                  "column": 16
                                },
                                "end": {
                                  "line": 587,
                                  "column": 96
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 24736,
                                  "end": 24811,
                                  "loc": {
                                    "start": {
                                      "line": 587,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 587,
                                      "column": 95
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 24736,
                                    "end": 24740,
                                    "loc": {
                                      "start": {
                                        "line": 587,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 587,
                                        "column": 24
                                      }
                                    },
                                    "name": "mesh"
                                  },
                                  "init": {
                                    "type": "NewExpression",
                                    "start": 24743,
                                    "end": 24811,
                                    "loc": {
                                      "start": {
                                        "line": 587,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 587,
                                        "column": 95
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 24747,
                                      "end": 24757,
                                      "loc": {
                                        "start": {
                                          "line": 587,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 587,
                                          "column": 41
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 24747,
                                        "end": 24752,
                                        "loc": {
                                          "start": {
                                            "line": 587,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 587,
                                            "column": 36
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 24753,
                                        "end": 24757,
                                        "loc": {
                                          "start": {
                                            "line": 587,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 587,
                                            "column": 41
                                          }
                                        },
                                        "name": "Mesh"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 24758,
                                        "end": 24762,
                                        "loc": {
                                          "start": {
                                            "line": 587,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 587,
                                            "column": 46
                                          }
                                        },
                                        "name": "geom"
                                      },
                                      {
                                        "type": "NewExpression",
                                        "start": 24764,
                                        "end": 24810,
                                        "loc": {
                                          "start": {
                                            "line": 587,
                                            "column": 48
                                          },
                                          "end": {
                                            "line": 587,
                                            "column": 94
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 24768,
                                          "end": 24791,
                                          "loc": {
                                            "start": {
                                              "line": 587,
                                              "column": 52
                                            },
                                            "end": {
                                              "line": 587,
                                              "column": 75
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 24768,
                                            "end": 24773,
                                            "loc": {
                                              "start": {
                                                "line": 587,
                                                "column": 52
                                              },
                                              "end": {
                                                "line": 587,
                                                "column": 57
                                              }
                                            },
                                            "name": "THREE"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 24774,
                                            "end": 24791,
                                            "loc": {
                                              "start": {
                                                "line": 587,
                                                "column": 58
                                              },
                                              "end": {
                                                "line": 587,
                                                "column": 75
                                              }
                                            },
                                            "name": "MeshBasicMaterial"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "ObjectExpression",
                                            "start": 24792,
                                            "end": 24809,
                                            "loc": {
                                              "start": {
                                                "line": 587,
                                                "column": 76
                                              },
                                              "end": {
                                                "line": 587,
                                                "column": 93
                                              }
                                            },
                                            "properties": [
                                              {
                                                "type": "Property",
                                                "start": 24793,
                                                "end": 24808,
                                                "loc": {
                                                  "start": {
                                                    "line": 587,
                                                    "column": 77
                                                  },
                                                  "end": {
                                                    "line": 587,
                                                    "column": 92
                                                  }
                                                },
                                                "method": false,
                                                "shorthand": false,
                                                "computed": false,
                                                "key": {
                                                  "type": "Identifier",
                                                  "start": 24793,
                                                  "end": 24798,
                                                  "loc": {
                                                    "start": {
                                                      "line": 587,
                                                      "column": 77
                                                    },
                                                    "end": {
                                                      "line": 587,
                                                      "column": 82
                                                    }
                                                  },
                                                  "name": "color"
                                                },
                                                "value": {
                                                  "type": "Literal",
                                                  "start": 24800,
                                                  "end": 24808,
                                                  "loc": {
                                                    "start": {
                                                      "line": 587,
                                                      "column": 84
                                                    },
                                                    "end": {
                                                      "line": 587,
                                                      "column": 92
                                                    }
                                                  },
                                                  "value": 8388479,
                                                  "rawValue": 8388479,
                                                  "raw": "0x7fff7f"
                                                },
                                                "kind": "init"
                                              }
                                            ]
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                }
                              ],
                              "kind": "var",
                              "trailingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "set position and orientation of arrow",
                                  "start": 24829,
                                  "end": 24868,
                                  "loc": {
                                    "start": {
                                      "line": 588,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 588,
                                      "column": 55
                                    }
                                  },
                                  "range": [
                                    24829,
                                    24868
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 24885,
                              "end": 24909,
                              "loc": {
                                "start": {
                                  "line": 589,
                                  "column": 16
                                },
                                "end": {
                                  "line": 589,
                                  "column": 40
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 24885,
                                "end": 24908,
                                "loc": {
                                  "start": {
                                    "line": 589,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 589,
                                    "column": 39
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 24885,
                                  "end": 24903,
                                  "loc": {
                                    "start": {
                                      "line": 589,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 589,
                                      "column": 34
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 24885,
                                    "end": 24898,
                                    "loc": {
                                      "start": {
                                        "line": 589,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 589,
                                        "column": 29
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 24885,
                                      "end": 24889,
                                      "loc": {
                                        "start": {
                                          "line": 589,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 589,
                                          "column": 20
                                        }
                                      },
                                      "name": "mesh",
                                      "leadingComments": null
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 24890,
                                      "end": 24898,
                                      "loc": {
                                        "start": {
                                          "line": 589,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 589,
                                          "column": 29
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false,
                                    "leadingComments": null
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 24899,
                                    "end": 24903,
                                    "loc": {
                                      "start": {
                                        "line": 589,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 589,
                                        "column": 34
                                      }
                                    },
                                    "name": "copy"
                                  },
                                  "computed": false,
                                  "leadingComments": null
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 24904,
                                    "end": 24907,
                                    "loc": {
                                      "start": {
                                        "line": 589,
                                        "column": 35
                                      },
                                      "end": {
                                        "line": 589,
                                        "column": 38
                                      }
                                    },
                                    "name": "pos"
                                  }
                                ],
                                "leadingComments": null
                              },
                              "leadingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "set position and orientation of arrow",
                                  "start": 24829,
                                  "end": 24868,
                                  "loc": {
                                    "start": {
                                      "line": 588,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 588,
                                      "column": 55
                                    }
                                  },
                                  "range": [
                                    24829,
                                    24868
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 24926,
                              "end": 24994,
                              "loc": {
                                "start": {
                                  "line": 590,
                                  "column": 16
                                },
                                "end": {
                                  "line": 590,
                                  "column": 84
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 24926,
                                "end": 24993,
                                "loc": {
                                  "start": {
                                    "line": 590,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 590,
                                    "column": 83
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 24926,
                                  "end": 24960,
                                  "loc": {
                                    "start": {
                                      "line": 590,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 590,
                                      "column": 50
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 24926,
                                    "end": 24941,
                                    "loc": {
                                      "start": {
                                        "line": 590,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 590,
                                        "column": 31
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 24926,
                                      "end": 24930,
                                      "loc": {
                                        "start": {
                                          "line": 590,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 590,
                                          "column": 20
                                        }
                                      },
                                      "name": "mesh"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 24931,
                                      "end": 24941,
                                      "loc": {
                                        "start": {
                                          "line": 590,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 590,
                                          "column": 31
                                        }
                                      },
                                      "name": "quaternion"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 24942,
                                    "end": 24960,
                                    "loc": {
                                      "start": {
                                        "line": 590,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 590,
                                        "column": 50
                                      }
                                    },
                                    "name": "setFromUnitVectors"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "NewExpression",
                                    "start": 24961,
                                    "end": 24987,
                                    "loc": {
                                      "start": {
                                        "line": 590,
                                        "column": 51
                                      },
                                      "end": {
                                        "line": 590,
                                        "column": 77
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 24965,
                                      "end": 24978,
                                      "loc": {
                                        "start": {
                                          "line": 590,
                                          "column": 55
                                        },
                                        "end": {
                                          "line": 590,
                                          "column": 68
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 24965,
                                        "end": 24970,
                                        "loc": {
                                          "start": {
                                            "line": 590,
                                            "column": 55
                                          },
                                          "end": {
                                            "line": 590,
                                            "column": 60
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 24971,
                                        "end": 24978,
                                        "loc": {
                                          "start": {
                                            "line": 590,
                                            "column": 61
                                          },
                                          "end": {
                                            "line": 590,
                                            "column": 68
                                          }
                                        },
                                        "name": "Vector3"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Literal",
                                        "start": 24979,
                                        "end": 24980,
                                        "loc": {
                                          "start": {
                                            "line": 590,
                                            "column": 69
                                          },
                                          "end": {
                                            "line": 590,
                                            "column": 70
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 24982,
                                        "end": 24983,
                                        "loc": {
                                          "start": {
                                            "line": 590,
                                            "column": 72
                                          },
                                          "end": {
                                            "line": 590,
                                            "column": 73
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 24985,
                                        "end": 24986,
                                        "loc": {
                                          "start": {
                                            "line": 590,
                                            "column": 75
                                          },
                                          "end": {
                                            "line": 590,
                                            "column": 76
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "Identifier",
                                    "start": 24989,
                                    "end": 24992,
                                    "loc": {
                                      "start": {
                                        "line": 590,
                                        "column": 79
                                      },
                                      "end": {
                                        "line": 590,
                                        "column": 82
                                      }
                                    },
                                    "name": "dir"
                                  }
                                ]
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 25012,
                              "end": 25040,
                              "loc": {
                                "start": {
                                  "line": 592,
                                  "column": 16
                                },
                                "end": {
                                  "line": 592,
                                  "column": 44
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 25012,
                                "end": 25039,
                                "loc": {
                                  "start": {
                                    "line": 592,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 592,
                                    "column": 43
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 25012,
                                  "end": 25033,
                                  "loc": {
                                    "start": {
                                      "line": 592,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 592,
                                      "column": 37
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 25012,
                                    "end": 25029,
                                    "loc": {
                                      "start": {
                                        "line": 592,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 592,
                                        "column": 33
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 25012,
                                      "end": 25016,
                                      "loc": {
                                        "start": {
                                          "line": 592,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 592,
                                          "column": 20
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 25017,
                                      "end": 25029,
                                      "loc": {
                                        "start": {
                                          "line": 592,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 592,
                                          "column": 33
                                        }
                                      },
                                      "name": "__dimensions"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 25030,
                                    "end": 25033,
                                    "loc": {
                                      "start": {
                                        "line": 592,
                                        "column": 34
                                      },
                                      "end": {
                                        "line": 592,
                                        "column": 37
                                      }
                                    },
                                    "name": "add"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 25034,
                                    "end": 25038,
                                    "loc": {
                                      "start": {
                                        "line": 592,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 592,
                                        "column": 42
                                      }
                                    },
                                    "name": "mesh"
                                  }
                                ]
                              }
                            },
                            {
                              "type": "BreakStatement",
                              "start": 25057,
                              "end": 25063,
                              "loc": {
                                "start": {
                                  "line": 593,
                                  "column": 16
                                },
                                "end": {
                                  "line": 593,
                                  "column": 22
                                }
                              },
                              "label": null
                            }
                          ],
                          "test": {
                            "type": "Literal",
                            "start": 23809,
                            "end": 23815,
                            "loc": {
                              "start": {
                                "line": 567,
                                "column": 17
                              },
                              "end": {
                                "line": 567,
                                "column": 23
                              }
                            },
                            "value": "Cone",
                            "rawValue": "Cone",
                            "raw": "'Cone'"
                          }
                        },
                        {
                          "type": "SwitchCase",
                          "start": 25077,
                          "end": 26549,
                          "loc": {
                            "start": {
                              "line": 595,
                              "column": 12
                            },
                            "end": {
                              "line": 624,
                              "column": 22
                            }
                          },
                          "consequent": [
                            {
                              "type": "IfStatement",
                              "start": 25106,
                              "end": 25134,
                              "loc": {
                                "start": {
                                  "line": 596,
                                  "column": 16
                                },
                                "end": {
                                  "line": 596,
                                  "column": 44
                                }
                              },
                              "test": {
                                "type": "BinaryExpression",
                                "start": 25110,
                                "end": 25126,
                                "loc": {
                                  "start": {
                                    "line": 596,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 596,
                                    "column": 36
                                  }
                                },
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 25110,
                                  "end": 25119,
                                  "loc": {
                                    "start": {
                                      "line": 596,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 596,
                                      "column": 29
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 25110,
                                    "end": 25114,
                                    "loc": {
                                      "start": {
                                        "line": 596,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 596,
                                        "column": 24
                                      }
                                    },
                                    "name": "data"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 25115,
                                    "end": 25119,
                                    "loc": {
                                      "start": {
                                        "line": 596,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 596,
                                        "column": 29
                                      }
                                    },
                                    "name": "text"
                                  },
                                  "computed": false
                                },
                                "operator": "==",
                                "right": {
                                  "type": "Literal",
                                  "start": 25123,
                                  "end": 25126,
                                  "loc": {
                                    "start": {
                                      "line": 596,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 596,
                                      "column": 36
                                    }
                                  },
                                  "value": "@",
                                  "rawValue": "@",
                                  "raw": "'@'"
                                }
                              },
                              "consequent": {
                                "type": "BreakStatement",
                                "start": 25128,
                                "end": 25134,
                                "loc": {
                                  "start": {
                                    "line": 596,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 596,
                                    "column": 44
                                  }
                                },
                                "label": null,
                                "leadingComments": null,
                                "trailingComments": null
                              },
                              "alternate": null,
                              "trailingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "no idea why this trash comes",
                                  "start": 25135,
                                  "end": 25165,
                                  "loc": {
                                    "start": {
                                      "line": 596,
                                      "column": 45
                                    },
                                    "end": {
                                      "line": 596,
                                      "column": 75
                                    }
                                  },
                                  "range": [
                                    25135,
                                    25165
                                  ]
                                },
                                {
                                  "type": "CommentLine",
                                  "value": "note: only following types of text are properly supported:",
                                  "start": 25182,
                                  "end": 25242,
                                  "loc": {
                                    "start": {
                                      "line": 597,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 597,
                                      "column": 76
                                    }
                                  },
                                  "range": [
                                    25182,
                                    25242
                                  ]
                                },
                                {
                                  "type": "CommentLine",
                                  "value": "  textType  = 1   (screen-oriented, fixed-sized text)",
                                  "start": 25259,
                                  "end": 25314,
                                  "loc": {
                                    "start": {
                                      "line": 598,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 598,
                                      "column": 71
                                    }
                                  },
                                  "range": [
                                    25259,
                                    25314
                                  ]
                                },
                                {
                                  "type": "CommentLine",
                                  "value": "  alignment = 0   (left/baseline-aligned text)",
                                  "start": 25331,
                                  "end": 25379,
                                  "loc": {
                                    "start": {
                                      "line": 599,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 599,
                                      "column": 64
                                    }
                                  },
                                  "range": [
                                    25331,
                                    25379
                                  ]
                                },
                                {
                                  "type": "CommentLine",
                                  "value": "create 3D text",
                                  "start": 25397,
                                  "end": 25413,
                                  "loc": {
                                    "start": {
                                      "line": 601,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 601,
                                      "column": 32
                                    }
                                  },
                                  "range": [
                                    25397,
                                    25413
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "VariableDeclaration",
                              "start": 25430,
                              "end": 25490,
                              "loc": {
                                "start": {
                                  "line": 602,
                                  "column": 16
                                },
                                "end": {
                                  "line": 602,
                                  "column": 76
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 25434,
                                  "end": 25489,
                                  "loc": {
                                    "start": {
                                      "line": 602,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 602,
                                      "column": 75
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 25434,
                                    "end": 25440,
                                    "loc": {
                                      "start": {
                                        "line": 602,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 602,
                                        "column": 26
                                      }
                                    },
                                    "name": "params",
                                    "leadingComments": null
                                  },
                                  "init": {
                                    "type": "ObjectExpression",
                                    "start": 25443,
                                    "end": 25489,
                                    "loc": {
                                      "start": {
                                        "line": 602,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 602,
                                        "column": 75
                                      }
                                    },
                                    "properties": [
                                      {
                                        "type": "Property",
                                        "start": 25444,
                                        "end": 25451,
                                        "loc": {
                                          "start": {
                                            "line": 602,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 602,
                                            "column": 37
                                          }
                                        },
                                        "method": false,
                                        "shorthand": false,
                                        "computed": false,
                                        "key": {
                                          "type": "Identifier",
                                          "start": 25444,
                                          "end": 25448,
                                          "loc": {
                                            "start": {
                                              "line": 602,
                                              "column": 30
                                            },
                                            "end": {
                                              "line": 602,
                                              "column": 34
                                            }
                                          },
                                          "name": "size"
                                        },
                                        "value": {
                                          "type": "Literal",
                                          "start": 25450,
                                          "end": 25451,
                                          "loc": {
                                            "start": {
                                              "line": 602,
                                              "column": 36
                                            },
                                            "end": {
                                              "line": 602,
                                              "column": 37
                                            }
                                          },
                                          "value": 1,
                                          "rawValue": 1,
                                          "raw": "1"
                                        },
                                        "kind": "init"
                                      },
                                      {
                                        "type": "Property",
                                        "start": 25453,
                                        "end": 25462,
                                        "loc": {
                                          "start": {
                                            "line": 602,
                                            "column": 39
                                          },
                                          "end": {
                                            "line": 602,
                                            "column": 48
                                          }
                                        },
                                        "method": false,
                                        "shorthand": false,
                                        "computed": false,
                                        "key": {
                                          "type": "Identifier",
                                          "start": 25453,
                                          "end": 25459,
                                          "loc": {
                                            "start": {
                                              "line": 602,
                                              "column": 39
                                            },
                                            "end": {
                                              "line": 602,
                                              "column": 45
                                            }
                                          },
                                          "name": "height"
                                        },
                                        "value": {
                                          "type": "Literal",
                                          "start": 25461,
                                          "end": 25462,
                                          "loc": {
                                            "start": {
                                              "line": 602,
                                              "column": 47
                                            },
                                            "end": {
                                              "line": 602,
                                              "column": 48
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        "kind": "init"
                                      },
                                      {
                                        "type": "Property",
                                        "start": 25464,
                                        "end": 25488,
                                        "loc": {
                                          "start": {
                                            "line": 602,
                                            "column": 50
                                          },
                                          "end": {
                                            "line": 602,
                                            "column": 74
                                          }
                                        },
                                        "method": false,
                                        "shorthand": false,
                                        "computed": false,
                                        "key": {
                                          "type": "Identifier",
                                          "start": 25464,
                                          "end": 25468,
                                          "loc": {
                                            "start": {
                                              "line": 602,
                                              "column": 50
                                            },
                                            "end": {
                                              "line": 602,
                                              "column": 54
                                            }
                                          },
                                          "name": "font"
                                        },
                                        "value": {
                                          "type": "MemberExpression",
                                          "start": 25470,
                                          "end": 25488,
                                          "loc": {
                                            "start": {
                                              "line": 602,
                                              "column": 56
                                            },
                                            "end": {
                                              "line": 602,
                                              "column": 74
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 25470,
                                            "end": 25483,
                                            "loc": {
                                              "start": {
                                                "line": 602,
                                                "column": 56
                                              },
                                              "end": {
                                                "line": 602,
                                                "column": 69
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 25470,
                                              "end": 25474,
                                              "loc": {
                                                "start": {
                                                  "line": 602,
                                                  "column": 56
                                                },
                                                "end": {
                                                  "line": 602,
                                                  "column": 60
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 25475,
                                              "end": 25483,
                                              "loc": {
                                                "start": {
                                                  "line": 602,
                                                  "column": 61
                                                },
                                                "end": {
                                                  "line": 602,
                                                  "column": 69
                                                }
                                              },
                                              "name": "sketcher"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 25484,
                                            "end": 25488,
                                            "loc": {
                                              "start": {
                                                "line": 602,
                                                "column": 70
                                              },
                                              "end": {
                                                "line": 602,
                                                "column": 74
                                              }
                                            },
                                            "name": "font"
                                          },
                                          "computed": false
                                        },
                                        "kind": "init"
                                      }
                                    ]
                                  },
                                  "leadingComments": null
                                }
                              ],
                              "kind": "var",
                              "leadingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "no idea why this trash comes",
                                  "start": 25135,
                                  "end": 25165,
                                  "loc": {
                                    "start": {
                                      "line": 596,
                                      "column": 45
                                    },
                                    "end": {
                                      "line": 596,
                                      "column": 75
                                    }
                                  },
                                  "range": [
                                    25135,
                                    25165
                                  ]
                                },
                                {
                                  "type": "CommentLine",
                                  "value": "note: only following types of text are properly supported:",
                                  "start": 25182,
                                  "end": 25242,
                                  "loc": {
                                    "start": {
                                      "line": 597,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 597,
                                      "column": 76
                                    }
                                  },
                                  "range": [
                                    25182,
                                    25242
                                  ]
                                },
                                {
                                  "type": "CommentLine",
                                  "value": "  textType  = 1   (screen-oriented, fixed-sized text)",
                                  "start": 25259,
                                  "end": 25314,
                                  "loc": {
                                    "start": {
                                      "line": 598,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 598,
                                      "column": 71
                                    }
                                  },
                                  "range": [
                                    25259,
                                    25314
                                  ]
                                },
                                {
                                  "type": "CommentLine",
                                  "value": "  alignment = 0   (left/baseline-aligned text)",
                                  "start": 25331,
                                  "end": 25379,
                                  "loc": {
                                    "start": {
                                      "line": 599,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 599,
                                      "column": 64
                                    }
                                  },
                                  "range": [
                                    25331,
                                    25379
                                  ]
                                },
                                {
                                  "type": "CommentLine",
                                  "value": "create 3D text",
                                  "start": 25397,
                                  "end": 25413,
                                  "loc": {
                                    "start": {
                                      "line": 601,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 601,
                                      "column": 32
                                    }
                                  },
                                  "range": [
                                    25397,
                                    25413
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "VariableDeclaration",
                              "start": 25507,
                              "end": 25560,
                              "loc": {
                                "start": {
                                  "line": 603,
                                  "column": 16
                                },
                                "end": {
                                  "line": 603,
                                  "column": 69
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 25511,
                                  "end": 25559,
                                  "loc": {
                                    "start": {
                                      "line": 603,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 603,
                                      "column": 68
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 25511,
                                    "end": 25515,
                                    "loc": {
                                      "start": {
                                        "line": 603,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 603,
                                        "column": 24
                                      }
                                    },
                                    "name": "geom"
                                  },
                                  "init": {
                                    "type": "NewExpression",
                                    "start": 25518,
                                    "end": 25559,
                                    "loc": {
                                      "start": {
                                        "line": 603,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 603,
                                        "column": 68
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 25522,
                                      "end": 25540,
                                      "loc": {
                                        "start": {
                                          "line": 603,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 603,
                                          "column": 49
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 25522,
                                        "end": 25527,
                                        "loc": {
                                          "start": {
                                            "line": 603,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 603,
                                            "column": 36
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 25528,
                                        "end": 25540,
                                        "loc": {
                                          "start": {
                                            "line": 603,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 603,
                                            "column": 49
                                          }
                                        },
                                        "name": "TextGeometry"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "MemberExpression",
                                        "start": 25541,
                                        "end": 25550,
                                        "loc": {
                                          "start": {
                                            "line": 603,
                                            "column": 50
                                          },
                                          "end": {
                                            "line": 603,
                                            "column": 59
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 25541,
                                          "end": 25545,
                                          "loc": {
                                            "start": {
                                              "line": 603,
                                              "column": 50
                                            },
                                            "end": {
                                              "line": 603,
                                              "column": 54
                                            }
                                          },
                                          "name": "data"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 25546,
                                          "end": 25550,
                                          "loc": {
                                            "start": {
                                              "line": 603,
                                              "column": 55
                                            },
                                            "end": {
                                              "line": 603,
                                              "column": 59
                                            }
                                          },
                                          "name": "text"
                                        },
                                        "computed": false
                                      },
                                      {
                                        "type": "Identifier",
                                        "start": 25552,
                                        "end": 25558,
                                        "loc": {
                                          "start": {
                                            "line": 603,
                                            "column": 61
                                          },
                                          "end": {
                                            "line": 603,
                                            "column": 67
                                          }
                                        },
                                        "name": "params"
                                      }
                                    ]
                                  }
                                }
                              ],
                              "kind": "var"
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 25577,
                              "end": 25603,
                              "loc": {
                                "start": {
                                  "line": 604,
                                  "column": 16
                                },
                                "end": {
                                  "line": 604,
                                  "column": 42
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 25577,
                                "end": 25602,
                                "loc": {
                                  "start": {
                                    "line": 604,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 604,
                                    "column": 41
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 25577,
                                  "end": 25600,
                                  "loc": {
                                    "start": {
                                      "line": 604,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 604,
                                      "column": 39
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 25577,
                                    "end": 25581,
                                    "loc": {
                                      "start": {
                                        "line": 604,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 604,
                                        "column": 20
                                      }
                                    },
                                    "name": "geom"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 25582,
                                    "end": 25600,
                                    "loc": {
                                      "start": {
                                        "line": 604,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 604,
                                        "column": 39
                                      }
                                    },
                                    "name": "computeBoundingBox"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              },
                              "trailingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "for debugging",
                                  "start": 25605,
                                  "end": 25620,
                                  "loc": {
                                    "start": {
                                      "line": 604,
                                      "column": 44
                                    },
                                    "end": {
                                      "line": 604,
                                      "column": 59
                                    }
                                  },
                                  "range": [
                                    25605,
                                    25620
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "VariableDeclaration",
                              "start": 25637,
                              "end": 25717,
                              "loc": {
                                "start": {
                                  "line": 605,
                                  "column": 16
                                },
                                "end": {
                                  "line": 605,
                                  "column": 96
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 25641,
                                  "end": 25716,
                                  "loc": {
                                    "start": {
                                      "line": 605,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 605,
                                      "column": 95
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 25641,
                                    "end": 25645,
                                    "loc": {
                                      "start": {
                                        "line": 605,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 605,
                                        "column": 24
                                      }
                                    },
                                    "name": "mesh",
                                    "leadingComments": null
                                  },
                                  "init": {
                                    "type": "NewExpression",
                                    "start": 25648,
                                    "end": 25716,
                                    "loc": {
                                      "start": {
                                        "line": 605,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 605,
                                        "column": 95
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 25652,
                                      "end": 25662,
                                      "loc": {
                                        "start": {
                                          "line": 605,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 605,
                                          "column": 41
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 25652,
                                        "end": 25657,
                                        "loc": {
                                          "start": {
                                            "line": 605,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 605,
                                            "column": 36
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 25658,
                                        "end": 25662,
                                        "loc": {
                                          "start": {
                                            "line": 605,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 605,
                                            "column": 41
                                          }
                                        },
                                        "name": "Mesh"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 25663,
                                        "end": 25667,
                                        "loc": {
                                          "start": {
                                            "line": 605,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 605,
                                            "column": 46
                                          }
                                        },
                                        "name": "geom"
                                      },
                                      {
                                        "type": "NewExpression",
                                        "start": 25669,
                                        "end": 25715,
                                        "loc": {
                                          "start": {
                                            "line": 605,
                                            "column": 48
                                          },
                                          "end": {
                                            "line": 605,
                                            "column": 94
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 25673,
                                          "end": 25696,
                                          "loc": {
                                            "start": {
                                              "line": 605,
                                              "column": 52
                                            },
                                            "end": {
                                              "line": 605,
                                              "column": 75
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 25673,
                                            "end": 25678,
                                            "loc": {
                                              "start": {
                                                "line": 605,
                                                "column": 52
                                              },
                                              "end": {
                                                "line": 605,
                                                "column": 57
                                              }
                                            },
                                            "name": "THREE"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 25679,
                                            "end": 25696,
                                            "loc": {
                                              "start": {
                                                "line": 605,
                                                "column": 58
                                              },
                                              "end": {
                                                "line": 605,
                                                "column": 75
                                              }
                                            },
                                            "name": "MeshBasicMaterial"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "ObjectExpression",
                                            "start": 25697,
                                            "end": 25714,
                                            "loc": {
                                              "start": {
                                                "line": 605,
                                                "column": 76
                                              },
                                              "end": {
                                                "line": 605,
                                                "column": 93
                                              }
                                            },
                                            "properties": [
                                              {
                                                "type": "Property",
                                                "start": 25698,
                                                "end": 25713,
                                                "loc": {
                                                  "start": {
                                                    "line": 605,
                                                    "column": 77
                                                  },
                                                  "end": {
                                                    "line": 605,
                                                    "column": 92
                                                  }
                                                },
                                                "method": false,
                                                "shorthand": false,
                                                "computed": false,
                                                "key": {
                                                  "type": "Identifier",
                                                  "start": 25698,
                                                  "end": 25703,
                                                  "loc": {
                                                    "start": {
                                                      "line": 605,
                                                      "column": 77
                                                    },
                                                    "end": {
                                                      "line": 605,
                                                      "column": 82
                                                    }
                                                  },
                                                  "name": "color"
                                                },
                                                "value": {
                                                  "type": "Literal",
                                                  "start": 25705,
                                                  "end": 25713,
                                                  "loc": {
                                                    "start": {
                                                      "line": 605,
                                                      "column": 84
                                                    },
                                                    "end": {
                                                      "line": 605,
                                                      "column": 92
                                                    }
                                                  },
                                                  "value": 4194239,
                                                  "rawValue": 4194239,
                                                  "raw": "0x3fffbf"
                                                },
                                                "kind": "init"
                                              }
                                            ]
                                          }
                                        ]
                                      }
                                    ]
                                  },
                                  "leadingComments": null
                                }
                              ],
                              "kind": "var",
                              "leadingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "for debugging",
                                  "start": 25605,
                                  "end": 25620,
                                  "loc": {
                                    "start": {
                                      "line": 604,
                                      "column": 44
                                    },
                                    "end": {
                                      "line": 604,
                                      "column": 59
                                    }
                                  },
                                  "range": [
                                    25605,
                                    25620
                                  ]
                                }
                              ],
                              "trailingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "set position in sketch coordinates",
                                  "start": 25734,
                                  "end": 25770,
                                  "loc": {
                                    "start": {
                                      "line": 606,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 606,
                                      "column": 52
                                    }
                                  },
                                  "range": [
                                    25734,
                                    25770
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "VariableDeclaration",
                              "start": 25787,
                              "end": 25818,
                              "loc": {
                                "start": {
                                  "line": 607,
                                  "column": 16
                                },
                                "end": {
                                  "line": 607,
                                  "column": 47
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 25791,
                                  "end": 25817,
                                  "loc": {
                                    "start": {
                                      "line": 607,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 607,
                                      "column": 46
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 25791,
                                    "end": 25794,
                                    "loc": {
                                      "start": {
                                        "line": 607,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 607,
                                        "column": 23
                                      }
                                    },
                                    "name": "obj",
                                    "leadingComments": null
                                  },
                                  "init": {
                                    "type": "NewExpression",
                                    "start": 25797,
                                    "end": 25817,
                                    "loc": {
                                      "start": {
                                        "line": 607,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 607,
                                        "column": 46
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 25801,
                                      "end": 25815,
                                      "loc": {
                                        "start": {
                                          "line": 607,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 607,
                                          "column": 44
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 25801,
                                        "end": 25806,
                                        "loc": {
                                          "start": {
                                            "line": 607,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 607,
                                            "column": 35
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 25807,
                                        "end": 25815,
                                        "loc": {
                                          "start": {
                                            "line": 607,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 607,
                                            "column": 44
                                          }
                                        },
                                        "name": "Object3D"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  },
                                  "leadingComments": null
                                }
                              ],
                              "kind": "var",
                              "leadingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "set position in sketch coordinates",
                                  "start": 25734,
                                  "end": 25770,
                                  "loc": {
                                    "start": {
                                      "line": 606,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 606,
                                      "column": 52
                                    }
                                  },
                                  "range": [
                                    25734,
                                    25770
                                  ]
                                }
                              ],
                              "trailingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "obj.fullName = factoryPart.name;\t//no idea what it is...",
                                  "start": 25835,
                                  "end": 25893,
                                  "loc": {
                                    "start": {
                                      "line": 608,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 608,
                                      "column": 74
                                    }
                                  },
                                  "range": [
                                    25835,
                                    25893
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 25910,
                              "end": 25926,
                              "loc": {
                                "start": {
                                  "line": 609,
                                  "column": 16
                                },
                                "end": {
                                  "line": 609,
                                  "column": 32
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 25910,
                                "end": 25925,
                                "loc": {
                                  "start": {
                                    "line": 609,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 609,
                                    "column": 31
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 25910,
                                  "end": 25918,
                                  "loc": {
                                    "start": {
                                      "line": 609,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 609,
                                      "column": 24
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 25910,
                                    "end": 25913,
                                    "loc": {
                                      "start": {
                                        "line": 609,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 609,
                                        "column": 19
                                      }
                                    },
                                    "name": "obj",
                                    "leadingComments": null
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 25914,
                                    "end": 25918,
                                    "loc": {
                                      "start": {
                                        "line": 609,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 609,
                                        "column": 24
                                      }
                                    },
                                    "name": "mesh"
                                  },
                                  "computed": false,
                                  "leadingComments": null
                                },
                                "right": {
                                  "type": "Identifier",
                                  "start": 25921,
                                  "end": 25925,
                                  "loc": {
                                    "start": {
                                      "line": 609,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 609,
                                      "column": 31
                                    }
                                  },
                                  "name": "mesh"
                                },
                                "leadingComments": null
                              },
                              "leadingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "obj.fullName = factoryPart.name;\t//no idea what it is...",
                                  "start": 25835,
                                  "end": 25893,
                                  "loc": {
                                    "start": {
                                      "line": 608,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 608,
                                      "column": 74
                                    }
                                  },
                                  "range": [
                                    25835,
                                    25893
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 25943,
                              "end": 25957,
                              "loc": {
                                "start": {
                                  "line": 610,
                                  "column": 16
                                },
                                "end": {
                                  "line": 610,
                                  "column": 30
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 25943,
                                "end": 25956,
                                "loc": {
                                  "start": {
                                    "line": 610,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 610,
                                    "column": 29
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 25943,
                                  "end": 25950,
                                  "loc": {
                                    "start": {
                                      "line": 610,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 610,
                                      "column": 23
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 25943,
                                    "end": 25946,
                                    "loc": {
                                      "start": {
                                        "line": 610,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 610,
                                        "column": 19
                                      }
                                    },
                                    "name": "obj"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 25947,
                                    "end": 25950,
                                    "loc": {
                                      "start": {
                                        "line": 610,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 610,
                                        "column": 23
                                      }
                                    },
                                    "name": "add"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 25951,
                                    "end": 25955,
                                    "loc": {
                                      "start": {
                                        "line": 610,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 610,
                                        "column": 28
                                      }
                                    },
                                    "name": "mesh"
                                  }
                                ]
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 25974,
                              "end": 26039,
                              "loc": {
                                "start": {
                                  "line": 611,
                                  "column": 16
                                },
                                "end": {
                                  "line": 611,
                                  "column": 81
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 25974,
                                "end": 26038,
                                "loc": {
                                  "start": {
                                    "line": 611,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 611,
                                    "column": 80
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 25974,
                                  "end": 26024,
                                  "loc": {
                                    "start": {
                                      "line": 611,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 611,
                                      "column": 66
                                    }
                                  },
                                  "object": {
                                    "type": "CallExpression",
                                    "start": 25974,
                                    "end": 26011,
                                    "loc": {
                                      "start": {
                                        "line": 611,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 611,
                                        "column": 53
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 25974,
                                      "end": 25996,
                                      "loc": {
                                        "start": {
                                          "line": 611,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 611,
                                          "column": 38
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 25974,
                                        "end": 25986,
                                        "loc": {
                                          "start": {
                                            "line": 611,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 611,
                                            "column": 28
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 25974,
                                          "end": 25977,
                                          "loc": {
                                            "start": {
                                              "line": 611,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 611,
                                              "column": 19
                                            }
                                          },
                                          "name": "obj"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 25978,
                                          "end": 25986,
                                          "loc": {
                                            "start": {
                                              "line": 611,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 611,
                                              "column": 28
                                            }
                                          },
                                          "name": "position"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 25987,
                                        "end": 25996,
                                        "loc": {
                                          "start": {
                                            "line": 611,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 611,
                                            "column": 38
                                          }
                                        },
                                        "name": "fromArray"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "MemberExpression",
                                        "start": 25997,
                                        "end": 26010,
                                        "loc": {
                                          "start": {
                                            "line": 611,
                                            "column": 39
                                          },
                                          "end": {
                                            "line": 611,
                                            "column": 52
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 25997,
                                          "end": 26001,
                                          "loc": {
                                            "start": {
                                              "line": 611,
                                              "column": 39
                                            },
                                            "end": {
                                              "line": 611,
                                              "column": 43
                                            }
                                          },
                                          "name": "data"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 26002,
                                          "end": 26010,
                                          "loc": {
                                            "start": {
                                              "line": 611,
                                              "column": 44
                                            },
                                            "end": {
                                              "line": 611,
                                              "column": 52
                                            }
                                          },
                                          "name": "position"
                                        },
                                        "computed": false
                                      }
                                    ]
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 26012,
                                    "end": 26024,
                                    "loc": {
                                      "start": {
                                        "line": 611,
                                        "column": 54
                                      },
                                      "end": {
                                        "line": 611,
                                        "column": 66
                                      }
                                    },
                                    "name": "applyMatrix4"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 26025,
                                    "end": 26037,
                                    "loc": {
                                      "start": {
                                        "line": 611,
                                        "column": 67
                                      },
                                      "end": {
                                        "line": 611,
                                        "column": 79
                                      }
                                    },
                                    "name": "worldToLocal"
                                  }
                                ]
                              },
                              "trailingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "add pixel-based sizing",
                                  "start": 26057,
                                  "end": 26081,
                                  "loc": {
                                    "start": {
                                      "line": 613,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 613,
                                      "column": 40
                                    }
                                  },
                                  "range": [
                                    26057,
                                    26081
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 26098,
                              "end": 26241,
                              "loc": {
                                "start": {
                                  "line": 614,
                                  "column": 16
                                },
                                "end": {
                                  "line": 617,
                                  "column": 18
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 26098,
                                "end": 26240,
                                "loc": {
                                  "start": {
                                    "line": 614,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 617,
                                    "column": 17
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 26098,
                                  "end": 26114,
                                  "loc": {
                                    "start": {
                                      "line": 614,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 614,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 26098,
                                    "end": 26101,
                                    "loc": {
                                      "start": {
                                        "line": 614,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 614,
                                        "column": 19
                                      }
                                    },
                                    "name": "obj",
                                    "leadingComments": null
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 26102,
                                    "end": 26114,
                                    "loc": {
                                      "start": {
                                        "line": 614,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 614,
                                        "column": 32
                                      }
                                    },
                                    "name": "setGeomSizes"
                                  },
                                  "computed": false,
                                  "leadingComments": null
                                },
                                "right": {
                                  "type": "FunctionExpression",
                                  "start": 26117,
                                  "end": 26240,
                                  "loc": {
                                    "start": {
                                      "line": 614,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 617,
                                      "column": 17
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": false,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 26126,
                                      "end": 26131,
                                      "loc": {
                                        "start": {
                                          "line": 614,
                                          "column": 44
                                        },
                                        "end": {
                                          "line": 614,
                                          "column": 49
                                        }
                                      },
                                      "name": "sizes"
                                    }
                                  ],
                                  "body": {
                                    "type": "BlockStatement",
                                    "start": 26133,
                                    "end": 26240,
                                    "loc": {
                                      "start": {
                                        "line": 614,
                                        "column": 51
                                      },
                                      "end": {
                                        "line": 617,
                                        "column": 17
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "VariableDeclaration",
                                        "start": 26155,
                                        "end": 26172,
                                        "loc": {
                                          "start": {
                                            "line": 615,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 615,
                                            "column": 37
                                          }
                                        },
                                        "declarations": [
                                          {
                                            "type": "VariableDeclarator",
                                            "start": 26159,
                                            "end": 26171,
                                            "loc": {
                                              "start": {
                                                "line": 615,
                                                "column": 24
                                              },
                                              "end": {
                                                "line": 615,
                                                "column": 36
                                              }
                                            },
                                            "id": {
                                              "type": "Identifier",
                                              "start": 26159,
                                              "end": 26160,
                                              "loc": {
                                                "start": {
                                                  "line": 615,
                                                  "column": 24
                                                },
                                                "end": {
                                                  "line": 615,
                                                  "column": 25
                                                }
                                              },
                                              "name": "s"
                                            },
                                            "init": {
                                              "type": "MemberExpression",
                                              "start": 26163,
                                              "end": 26171,
                                              "loc": {
                                                "start": {
                                                  "line": 615,
                                                  "column": 28
                                                },
                                                "end": {
                                                  "line": 615,
                                                  "column": 36
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 26163,
                                                "end": 26168,
                                                "loc": {
                                                  "start": {
                                                    "line": 615,
                                                    "column": 28
                                                  },
                                                  "end": {
                                                    "line": 615,
                                                    "column": 33
                                                  }
                                                },
                                                "name": "sizes"
                                              },
                                              "property": {
                                                "type": "Literal",
                                                "start": 26169,
                                                "end": 26170,
                                                "loc": {
                                                  "start": {
                                                    "line": 615,
                                                    "column": 34
                                                  },
                                                  "end": {
                                                    "line": 615,
                                                    "column": 35
                                                  }
                                                },
                                                "value": 0,
                                                "rawValue": 0,
                                                "raw": "0"
                                              },
                                              "computed": true
                                            }
                                          }
                                        ],
                                        "kind": "var"
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 26193,
                                        "end": 26222,
                                        "loc": {
                                          "start": {
                                            "line": 616,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 616,
                                            "column": 49
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 26193,
                                          "end": 26221,
                                          "loc": {
                                            "start": {
                                              "line": 616,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 616,
                                              "column": 48
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 26193,
                                            "end": 26212,
                                            "loc": {
                                              "start": {
                                                "line": 616,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 616,
                                                "column": 39
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 26193,
                                              "end": 26208,
                                              "loc": {
                                                "start": {
                                                  "line": 616,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 616,
                                                  "column": 35
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 26193,
                                                "end": 26202,
                                                "loc": {
                                                  "start": {
                                                    "line": 616,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 616,
                                                    "column": 29
                                                  }
                                                },
                                                "object": {
                                                  "type": "ThisExpression",
                                                  "start": 26193,
                                                  "end": 26197,
                                                  "loc": {
                                                    "start": {
                                                      "line": 616,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 616,
                                                      "column": 24
                                                    }
                                                  }
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 26198,
                                                  "end": 26202,
                                                  "loc": {
                                                    "start": {
                                                      "line": 616,
                                                      "column": 25
                                                    },
                                                    "end": {
                                                      "line": 616,
                                                      "column": 29
                                                    }
                                                  },
                                                  "name": "mesh"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 26203,
                                                "end": 26208,
                                                "loc": {
                                                  "start": {
                                                    "line": 616,
                                                    "column": 30
                                                  },
                                                  "end": {
                                                    "line": 616,
                                                    "column": 35
                                                  }
                                                },
                                                "name": "scale"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 26209,
                                              "end": 26212,
                                              "loc": {
                                                "start": {
                                                  "line": 616,
                                                  "column": 36
                                                },
                                                "end": {
                                                  "line": 616,
                                                  "column": 39
                                                }
                                              },
                                              "name": "set"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "Identifier",
                                              "start": 26213,
                                              "end": 26214,
                                              "loc": {
                                                "start": {
                                                  "line": 616,
                                                  "column": 40
                                                },
                                                "end": {
                                                  "line": 616,
                                                  "column": 41
                                                }
                                              },
                                              "name": "s"
                                            },
                                            {
                                              "type": "Identifier",
                                              "start": 26216,
                                              "end": 26217,
                                              "loc": {
                                                "start": {
                                                  "line": 616,
                                                  "column": 43
                                                },
                                                "end": {
                                                  "line": 616,
                                                  "column": 44
                                                }
                                              },
                                              "name": "s"
                                            },
                                            {
                                              "type": "Identifier",
                                              "start": 26219,
                                              "end": 26220,
                                              "loc": {
                                                "start": {
                                                  "line": 616,
                                                  "column": 46
                                                },
                                                "end": {
                                                  "line": 616,
                                                  "column": 47
                                                }
                                              },
                                              "name": "s"
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  }
                                },
                                "leadingComments": null
                              },
                              "leadingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "add pixel-based sizing",
                                  "start": 26057,
                                  "end": 26081,
                                  "loc": {
                                    "start": {
                                      "line": 613,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 613,
                                      "column": 40
                                    }
                                  },
                                  "range": [
                                    26057,
                                    26081
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 26258,
                              "end": 26322,
                              "loc": {
                                "start": {
                                  "line": 618,
                                  "column": 16
                                },
                                "end": {
                                  "line": 618,
                                  "column": 80
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 26258,
                                "end": 26321,
                                "loc": {
                                  "start": {
                                    "line": 618,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 618,
                                    "column": 79
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 26258,
                                  "end": 26295,
                                  "loc": {
                                    "start": {
                                      "line": 618,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 618,
                                      "column": 53
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 26258,
                                    "end": 26290,
                                    "loc": {
                                      "start": {
                                        "line": 618,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 618,
                                        "column": 48
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 26258,
                                      "end": 26266,
                                      "loc": {
                                        "start": {
                                          "line": 618,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 618,
                                          "column": 24
                                        }
                                      },
                                      "name": "Sketcher"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 26267,
                                      "end": 26290,
                                      "loc": {
                                        "start": {
                                          "line": 618,
                                          "column": 25
                                        },
                                        "end": {
                                          "line": 618,
                                          "column": 48
                                        }
                                      },
                                      "name": "mixinPixelSizedGeometry"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 26291,
                                    "end": 26295,
                                    "loc": {
                                      "start": {
                                        "line": 618,
                                        "column": 49
                                      },
                                      "end": {
                                        "line": 618,
                                        "column": 53
                                      }
                                    },
                                    "name": "call"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 26296,
                                    "end": 26299,
                                    "loc": {
                                      "start": {
                                        "line": 618,
                                        "column": 54
                                      },
                                      "end": {
                                        "line": 618,
                                        "column": 57
                                      }
                                    },
                                    "name": "obj"
                                  },
                                  {
                                    "type": "LogicalExpression",
                                    "start": 26301,
                                    "end": 26320,
                                    "loc": {
                                      "start": {
                                        "line": 618,
                                        "column": 59
                                      },
                                      "end": {
                                        "line": 618,
                                        "column": 78
                                      }
                                    },
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 26301,
                                      "end": 26314,
                                      "loc": {
                                        "start": {
                                          "line": 618,
                                          "column": 59
                                        },
                                        "end": {
                                          "line": 618,
                                          "column": 72
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 26301,
                                        "end": 26305,
                                        "loc": {
                                          "start": {
                                            "line": 618,
                                            "column": 59
                                          },
                                          "end": {
                                            "line": 618,
                                            "column": 63
                                          }
                                        },
                                        "name": "data"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 26306,
                                        "end": 26314,
                                        "loc": {
                                          "start": {
                                            "line": 618,
                                            "column": 64
                                          },
                                          "end": {
                                            "line": 618,
                                            "column": 72
                                          }
                                        },
                                        "name": "fontSize"
                                      },
                                      "computed": false
                                    },
                                    "operator": "||",
                                    "right": {
                                      "type": "Literal",
                                      "start": 26318,
                                      "end": 26320,
                                      "loc": {
                                        "start": {
                                          "line": 618,
                                          "column": 76
                                        },
                                        "end": {
                                          "line": 618,
                                          "column": 78
                                        }
                                      },
                                      "value": 12,
                                      "rawValue": 12,
                                      "raw": "12"
                                    }
                                  }
                                ]
                              },
                              "trailingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "register automatic updates",
                                  "start": 26339,
                                  "end": 26367,
                                  "loc": {
                                    "start": {
                                      "line": 619,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 619,
                                      "column": 44
                                    }
                                  },
                                  "range": [
                                    26339,
                                    26367
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "VariableDeclaration",
                              "start": 26384,
                              "end": 26422,
                              "loc": {
                                "start": {
                                  "line": 620,
                                  "column": 16
                                },
                                "end": {
                                  "line": 620,
                                  "column": 54
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 26388,
                                  "end": 26421,
                                  "loc": {
                                    "start": {
                                      "line": 620,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 620,
                                      "column": 53
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 26388,
                                    "end": 26392,
                                    "loc": {
                                      "start": {
                                        "line": 620,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 620,
                                        "column": 24
                                      }
                                    },
                                    "name": "view",
                                    "leadingComments": null
                                  },
                                  "init": {
                                    "type": "MemberExpression",
                                    "start": 26395,
                                    "end": 26421,
                                    "loc": {
                                      "start": {
                                        "line": 620,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 620,
                                        "column": 53
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 26395,
                                      "end": 26408,
                                      "loc": {
                                        "start": {
                                          "line": 620,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 620,
                                          "column": 40
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 26395,
                                        "end": 26399,
                                        "loc": {
                                          "start": {
                                            "line": 620,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 620,
                                            "column": 31
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 26400,
                                        "end": 26408,
                                        "loc": {
                                          "start": {
                                            "line": 620,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 620,
                                            "column": 40
                                          }
                                        },
                                        "name": "sketcher"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 26409,
                                      "end": 26421,
                                      "loc": {
                                        "start": {
                                          "line": 620,
                                          "column": 41
                                        },
                                        "end": {
                                          "line": 620,
                                          "column": 53
                                        }
                                      },
                                      "name": "__parentView"
                                    },
                                    "computed": false
                                  },
                                  "leadingComments": null
                                }
                              ],
                              "kind": "var",
                              "leadingComments": [
                                {
                                  "type": "CommentLine",
                                  "value": "register automatic updates",
                                  "start": 26339,
                                  "end": 26367,
                                  "loc": {
                                    "start": {
                                      "line": 619,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 619,
                                      "column": 44
                                    }
                                  },
                                  "range": [
                                    26339,
                                    26367
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 26439,
                              "end": 26481,
                              "loc": {
                                "start": {
                                  "line": 621,
                                  "column": 16
                                },
                                "end": {
                                  "line": 621,
                                  "column": 58
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 26439,
                                "end": 26480,
                                "loc": {
                                  "start": {
                                    "line": 621,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 621,
                                    "column": 57
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 26439,
                                  "end": 26469,
                                  "loc": {
                                    "start": {
                                      "line": 621,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 621,
                                      "column": 46
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 26439,
                                    "end": 26447,
                                    "loc": {
                                      "start": {
                                        "line": 621,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 621,
                                        "column": 24
                                      }
                                    },
                                    "name": "Sketcher"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 26448,
                                    "end": 26469,
                                    "loc": {
                                      "start": {
                                        "line": 621,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 621,
                                        "column": 46
                                      }
                                    },
                                    "name": "registerVisualization"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 26470,
                                    "end": 26474,
                                    "loc": {
                                      "start": {
                                        "line": 621,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 621,
                                        "column": 51
                                      }
                                    },
                                    "name": "view"
                                  },
                                  {
                                    "type": "Identifier",
                                    "start": 26476,
                                    "end": 26479,
                                    "loc": {
                                      "start": {
                                        "line": 621,
                                        "column": 53
                                      },
                                      "end": {
                                        "line": 621,
                                        "column": 56
                                      }
                                    },
                                    "name": "obj"
                                  }
                                ]
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 26499,
                              "end": 26526,
                              "loc": {
                                "start": {
                                  "line": 623,
                                  "column": 16
                                },
                                "end": {
                                  "line": 623,
                                  "column": 43
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 26499,
                                "end": 26525,
                                "loc": {
                                  "start": {
                                    "line": 623,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 623,
                                    "column": 42
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 26499,
                                  "end": 26520,
                                  "loc": {
                                    "start": {
                                      "line": 623,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 623,
                                      "column": 37
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 26499,
                                    "end": 26516,
                                    "loc": {
                                      "start": {
                                        "line": 623,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 623,
                                        "column": 33
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 26499,
                                      "end": 26503,
                                      "loc": {
                                        "start": {
                                          "line": 623,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 623,
                                          "column": 20
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 26504,
                                      "end": 26516,
                                      "loc": {
                                        "start": {
                                          "line": 623,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 623,
                                          "column": 33
                                        }
                                      },
                                      "name": "__dimensions"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 26517,
                                    "end": 26520,
                                    "loc": {
                                      "start": {
                                        "line": 623,
                                        "column": 34
                                      },
                                      "end": {
                                        "line": 623,
                                        "column": 37
                                      }
                                    },
                                    "name": "add"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 26521,
                                    "end": 26524,
                                    "loc": {
                                      "start": {
                                        "line": 623,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 623,
                                        "column": 41
                                      }
                                    },
                                    "name": "obj"
                                  }
                                ]
                              }
                            },
                            {
                              "type": "BreakStatement",
                              "start": 26543,
                              "end": 26549,
                              "loc": {
                                "start": {
                                  "line": 624,
                                  "column": 16
                                },
                                "end": {
                                  "line": 624,
                                  "column": 22
                                }
                              },
                              "label": null
                            }
                          ],
                          "test": {
                            "type": "Literal",
                            "start": 25082,
                            "end": 25088,
                            "loc": {
                              "start": {
                                "line": 595,
                                "column": 17
                              },
                              "end": {
                                "line": 595,
                                "column": 23
                              }
                            },
                            "value": "Text",
                            "rawValue": "Text",
                            "raw": "'Text'"
                          }
                        },
                        {
                          "type": "SwitchCase",
                          "start": 26563,
                          "end": 26780,
                          "loc": {
                            "start": {
                              "line": 626,
                              "column": 12
                            },
                            "end": {
                              "line": 630,
                              "column": 22
                            }
                          },
                          "consequent": [
                            {
                              "type": "ExpressionStatement",
                              "start": 26592,
                              "end": 26632,
                              "loc": {
                                "start": {
                                  "line": 627,
                                  "column": 16
                                },
                                "end": {
                                  "line": 627,
                                  "column": 56
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 26592,
                                "end": 26631,
                                "loc": {
                                  "start": {
                                    "line": 627,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 627,
                                    "column": 55
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 26592,
                                  "end": 26617,
                                  "loc": {
                                    "start": {
                                      "line": 627,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 627,
                                      "column": 41
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 26592,
                                    "end": 26605,
                                    "loc": {
                                      "start": {
                                        "line": 627,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 627,
                                        "column": 29
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 26592,
                                      "end": 26596,
                                      "loc": {
                                        "start": {
                                          "line": 627,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 627,
                                          "column": 20
                                        }
                                      },
                                      "name": "data"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 26597,
                                      "end": 26605,
                                      "loc": {
                                        "start": {
                                          "line": 627,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 627,
                                          "column": 29
                                        }
                                      },
                                      "name": "geometry"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 26606,
                                    "end": 26617,
                                    "loc": {
                                      "start": {
                                        "line": 627,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 627,
                                        "column": 41
                                      }
                                    },
                                    "name": "applyMatrix"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 26618,
                                    "end": 26630,
                                    "loc": {
                                      "start": {
                                        "line": 627,
                                        "column": 42
                                      },
                                      "end": {
                                        "line": 627,
                                        "column": 54
                                      }
                                    },
                                    "name": "worldToLocal"
                                  }
                                ]
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 26649,
                              "end": 26712,
                              "loc": {
                                "start": {
                                  "line": 628,
                                  "column": 16
                                },
                                "end": {
                                  "line": 628,
                                  "column": 79
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 26649,
                                "end": 26711,
                                "loc": {
                                  "start": {
                                    "line": 628,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 628,
                                    "column": 78
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 26649,
                                  "end": 26662,
                                  "loc": {
                                    "start": {
                                      "line": 628,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 628,
                                      "column": 29
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 26649,
                                    "end": 26653,
                                    "loc": {
                                      "start": {
                                        "line": 628,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 628,
                                        "column": 20
                                      }
                                    },
                                    "name": "data"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 26654,
                                    "end": 26662,
                                    "loc": {
                                      "start": {
                                        "line": 628,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 628,
                                        "column": 29
                                      }
                                    },
                                    "name": "material"
                                  },
                                  "computed": false
                                },
                                "right": {
                                  "type": "NewExpression",
                                  "start": 26665,
                                  "end": 26711,
                                  "loc": {
                                    "start": {
                                      "line": 628,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 628,
                                      "column": 78
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 26669,
                                    "end": 26692,
                                    "loc": {
                                      "start": {
                                        "line": 628,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 628,
                                        "column": 59
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 26669,
                                      "end": 26674,
                                      "loc": {
                                        "start": {
                                          "line": 628,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 628,
                                          "column": 41
                                        }
                                      },
                                      "name": "THREE"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 26675,
                                      "end": 26692,
                                      "loc": {
                                        "start": {
                                          "line": 628,
                                          "column": 42
                                        },
                                        "end": {
                                          "line": 628,
                                          "column": 59
                                        }
                                      },
                                      "name": "MeshBasicMaterial"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "ObjectExpression",
                                      "start": 26693,
                                      "end": 26710,
                                      "loc": {
                                        "start": {
                                          "line": 628,
                                          "column": 60
                                        },
                                        "end": {
                                          "line": 628,
                                          "column": 77
                                        }
                                      },
                                      "properties": [
                                        {
                                          "type": "Property",
                                          "start": 26694,
                                          "end": 26709,
                                          "loc": {
                                            "start": {
                                              "line": 628,
                                              "column": 61
                                            },
                                            "end": {
                                              "line": 628,
                                              "column": 76
                                            }
                                          },
                                          "method": false,
                                          "shorthand": false,
                                          "computed": false,
                                          "key": {
                                            "type": "Identifier",
                                            "start": 26694,
                                            "end": 26699,
                                            "loc": {
                                              "start": {
                                                "line": 628,
                                                "column": 61
                                              },
                                              "end": {
                                                "line": 628,
                                                "column": 66
                                              }
                                            },
                                            "name": "color"
                                          },
                                          "value": {
                                            "type": "Literal",
                                            "start": 26701,
                                            "end": 26709,
                                            "loc": {
                                              "start": {
                                                "line": 628,
                                                "column": 68
                                              },
                                              "end": {
                                                "line": 628,
                                                "column": 76
                                              }
                                            },
                                            "value": 8388479,
                                            "rawValue": 8388479,
                                            "raw": "0x7fff7f"
                                          },
                                          "kind": "init"
                                        }
                                      ]
                                    }
                                  ]
                                }
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 26729,
                              "end": 26757,
                              "loc": {
                                "start": {
                                  "line": 629,
                                  "column": 16
                                },
                                "end": {
                                  "line": 629,
                                  "column": 44
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 26729,
                                "end": 26756,
                                "loc": {
                                  "start": {
                                    "line": 629,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 629,
                                    "column": 43
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 26729,
                                  "end": 26750,
                                  "loc": {
                                    "start": {
                                      "line": 629,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 629,
                                      "column": 37
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 26729,
                                    "end": 26746,
                                    "loc": {
                                      "start": {
                                        "line": 629,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 629,
                                        "column": 33
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 26729,
                                      "end": 26733,
                                      "loc": {
                                        "start": {
                                          "line": 629,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 629,
                                          "column": 20
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 26734,
                                      "end": 26746,
                                      "loc": {
                                        "start": {
                                          "line": 629,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 629,
                                          "column": 33
                                        }
                                      },
                                      "name": "__dimensions"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 26747,
                                    "end": 26750,
                                    "loc": {
                                      "start": {
                                        "line": 629,
                                        "column": 34
                                      },
                                      "end": {
                                        "line": 629,
                                        "column": 37
                                      }
                                    },
                                    "name": "add"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 26751,
                                    "end": 26755,
                                    "loc": {
                                      "start": {
                                        "line": 629,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 629,
                                        "column": 42
                                      }
                                    },
                                    "name": "data"
                                  }
                                ]
                              }
                            },
                            {
                              "type": "BreakStatement",
                              "start": 26774,
                              "end": 26780,
                              "loc": {
                                "start": {
                                  "line": 630,
                                  "column": 16
                                },
                                "end": {
                                  "line": 630,
                                  "column": 22
                                }
                              },
                              "label": null
                            }
                          ],
                          "test": {
                            "type": "Literal",
                            "start": 26568,
                            "end": 26574,
                            "loc": {
                              "start": {
                                "line": 626,
                                "column": 17
                              },
                              "end": {
                                "line": 626,
                                "column": 23
                              }
                            },
                            "value": "Line",
                            "rawValue": "Line",
                            "raw": "'Line'"
                          }
                        }
                      ]
                    }
                  ]
                }
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " intercept graphical objects created on the server",
                  "start": 23566,
                  "end": 23618,
                  "loc": {
                    "start": {
                      "line": 561,
                      "column": 4
                    },
                    "end": {
                      "line": 561,
                      "column": 56
                    }
                  },
                  "range": [
                    23566,
                    23618
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 26802,
              "end": 27076,
              "loc": {
                "start": {
                  "line": 634,
                  "column": 4
                },
                "end": {
                  "line": 642,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 26802,
                "end": 26817,
                "loc": {
                  "start": {
                    "line": 634,
                    "column": 4
                  },
                  "end": {
                    "line": 634,
                    "column": 19
                  }
                },
                "name": "showConstraints"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 26817,
                "end": 27076,
                "loc": {
                  "start": {
                    "line": 634,
                    "column": 19
                  },
                  "end": {
                    "line": 642,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 26818,
                    "end": 26821,
                    "loc": {
                      "start": {
                        "line": 634,
                        "column": 20
                      },
                      "end": {
                        "line": 634,
                        "column": 23
                      }
                    },
                    "name": "obj"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 26823,
                  "end": 27076,
                  "loc": {
                    "start": {
                      "line": 634,
                      "column": 25
                    },
                    "end": {
                      "line": 642,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 26833,
                      "end": 26884,
                      "loc": {
                        "start": {
                          "line": 635,
                          "column": 8
                        },
                        "end": {
                          "line": 635,
                          "column": 59
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 26837,
                          "end": 26883,
                          "loc": {
                            "start": {
                              "line": 635,
                              "column": 12
                            },
                            "end": {
                              "line": 635,
                              "column": 58
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 26837,
                            "end": 26848,
                            "loc": {
                              "start": {
                                "line": 635,
                                "column": 12
                              },
                              "end": {
                                "line": 635,
                                "column": 23
                              }
                            },
                            "name": "constraints"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 26851,
                            "end": 26883,
                            "loc": {
                              "start": {
                                "line": 635,
                                "column": 26
                              },
                              "end": {
                                "line": 635,
                                "column": 58
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 26851,
                              "end": 26878,
                              "loc": {
                                "start": {
                                  "line": 635,
                                  "column": 26
                                },
                                "end": {
                                  "line": 635,
                                  "column": 53
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 26851,
                                "end": 26855,
                                "loc": {
                                  "start": {
                                    "line": 635,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 635,
                                    "column": 30
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 26856,
                                "end": 26878,
                                "loc": {
                                  "start": {
                                    "line": 635,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 635,
                                    "column": 53
                                  }
                                },
                                "name": "getConstraintsOnSketch"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 26879,
                                "end": 26882,
                                "loc": {
                                  "start": {
                                    "line": 635,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 635,
                                    "column": 57
                                  }
                                },
                                "name": "obj"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 26893,
                      "end": 26930,
                      "loc": {
                        "start": {
                          "line": 636,
                          "column": 8
                        },
                        "end": {
                          "line": 636,
                          "column": 45
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 26897,
                        "end": 26921,
                        "loc": {
                          "start": {
                            "line": 636,
                            "column": 12
                          },
                          "end": {
                            "line": 636,
                            "column": 36
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 26897,
                          "end": 26915,
                          "loc": {
                            "start": {
                              "line": 636,
                              "column": 12
                            },
                            "end": {
                              "line": 636,
                              "column": 30
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 26897,
                            "end": 26908,
                            "loc": {
                              "start": {
                                "line": 636,
                                "column": 12
                              },
                              "end": {
                                "line": 636,
                                "column": 23
                              }
                            },
                            "name": "constraints"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 26909,
                            "end": 26915,
                            "loc": {
                              "start": {
                                "line": 636,
                                "column": 24
                              },
                              "end": {
                                "line": 636,
                                "column": 30
                              }
                            },
                            "name": "length"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Literal",
                          "start": 26920,
                          "end": 26921,
                          "loc": {
                            "start": {
                              "line": 636,
                              "column": 35
                            },
                            "end": {
                              "line": 636,
                              "column": 36
                            }
                          },
                          "value": 0,
                          "rawValue": 0,
                          "raw": "0"
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 26923,
                        "end": 26930,
                        "loc": {
                          "start": {
                            "line": 636,
                            "column": 38
                          },
                          "end": {
                            "line": 636,
                            "column": 45
                          }
                        },
                        "argument": null
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 26940,
                      "end": 26980,
                      "loc": {
                        "start": {
                          "line": 638,
                          "column": 8
                        },
                        "end": {
                          "line": 638,
                          "column": 48
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 26940,
                        "end": 26979,
                        "loc": {
                          "start": {
                            "line": 638,
                            "column": 8
                          },
                          "end": {
                            "line": 638,
                            "column": 47
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 26940,
                          "end": 26972,
                          "loc": {
                            "start": {
                              "line": 638,
                              "column": 8
                            },
                            "end": {
                              "line": 638,
                              "column": 40
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 26940,
                            "end": 26964,
                            "loc": {
                              "start": {
                                "line": 638,
                                "column": 8
                              },
                              "end": {
                                "line": 638,
                                "column": 32
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 26940,
                              "end": 26943,
                              "loc": {
                                "start": {
                                  "line": 638,
                                  "column": 8
                                },
                                "end": {
                                  "line": 638,
                                  "column": 11
                                }
                              },
                              "name": "obj"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 26944,
                              "end": 26964,
                              "loc": {
                                "start": {
                                  "line": 638,
                                  "column": 12
                                },
                                "end": {
                                  "line": 638,
                                  "column": 32
                                }
                              },
                              "name": "constraintsSubstrate"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 26965,
                            "end": 26972,
                            "loc": {
                              "start": {
                                "line": 638,
                                "column": 33
                              },
                              "end": {
                                "line": 638,
                                "column": 40
                              }
                            },
                            "name": "visible"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 26975,
                          "end": 26979,
                          "loc": {
                            "start": {
                              "line": 638,
                              "column": 43
                            },
                            "end": {
                              "line": 638,
                              "column": 47
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 26990,
                      "end": 27018,
                      "loc": {
                        "start": {
                          "line": 640,
                          "column": 8
                        },
                        "end": {
                          "line": 640,
                          "column": 36
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 26990,
                        "end": 27017,
                        "loc": {
                          "start": {
                            "line": 640,
                            "column": 8
                          },
                          "end": {
                            "line": 640,
                            "column": 35
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 26990,
                          "end": 27012,
                          "loc": {
                            "start": {
                              "line": 640,
                              "column": 8
                            },
                            "end": {
                              "line": 640,
                              "column": 30
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 26990,
                            "end": 26994,
                            "loc": {
                              "start": {
                                "line": 640,
                                "column": 8
                              },
                              "end": {
                                "line": 640,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 26995,
                            "end": 27012,
                            "loc": {
                              "start": {
                                "line": 640,
                                "column": 13
                              },
                              "end": {
                                "line": 640,
                                "column": 30
                              }
                            },
                            "name": "updateConstraints"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 27013,
                            "end": 27016,
                            "loc": {
                              "start": {
                                "line": 640,
                                "column": 31
                              },
                              "end": {
                                "line": 640,
                                "column": 34
                              }
                            },
                            "name": "obj"
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 27027,
                      "end": 27070,
                      "loc": {
                        "start": {
                          "line": 641,
                          "column": 8
                        },
                        "end": {
                          "line": 641,
                          "column": 51
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 27027,
                        "end": 27069,
                        "loc": {
                          "start": {
                            "line": 641,
                            "column": 8
                          },
                          "end": {
                            "line": 641,
                            "column": 50
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 27027,
                          "end": 27046,
                          "loc": {
                            "start": {
                              "line": 641,
                              "column": 8
                            },
                            "end": {
                              "line": 641,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 27027,
                            "end": 27038,
                            "loc": {
                              "start": {
                                "line": 641,
                                "column": 8
                              },
                              "end": {
                                "line": 641,
                                "column": 19
                              }
                            },
                            "name": "constraints"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 27039,
                            "end": 27046,
                            "loc": {
                              "start": {
                                "line": 641,
                                "column": 20
                              },
                              "end": {
                                "line": 641,
                                "column": 27
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 27047,
                            "end": 27068,
                            "loc": {
                              "start": {
                                "line": 641,
                                "column": 28
                              },
                              "end": {
                                "line": 641,
                                "column": 49
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": true,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 27047,
                                "end": 27052,
                                "loc": {
                                  "start": {
                                    "line": 641,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 641,
                                    "column": 33
                                  }
                                },
                                "name": "child"
                              }
                            ],
                            "body": {
                              "type": "CallExpression",
                              "start": 27056,
                              "end": 27068,
                              "loc": {
                                "start": {
                                  "line": 641,
                                  "column": 37
                                },
                                "end": {
                                  "line": 641,
                                  "column": 49
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 27056,
                                "end": 27066,
                                "loc": {
                                  "start": {
                                    "line": 641,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 641,
                                    "column": 47
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 27056,
                                  "end": 27061,
                                  "loc": {
                                    "start": {
                                      "line": 641,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 641,
                                      "column": 42
                                    }
                                  },
                                  "name": "child"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 27062,
                                  "end": 27066,
                                  "loc": {
                                    "start": {
                                      "line": 641,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 641,
                                      "column": 47
                                    }
                                  },
                                  "name": "show"
                                },
                                "computed": false
                              },
                              "arguments": []
                            }
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 27082,
              "end": 27558,
              "loc": {
                "start": {
                  "line": 644,
                  "column": 4
                },
                "end": {
                  "line": 659,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 27082,
                "end": 27097,
                "loc": {
                  "start": {
                    "line": 644,
                    "column": 4
                  },
                  "end": {
                    "line": 644,
                    "column": 19
                  }
                },
                "name": "hideConstraints"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 27097,
                "end": 27558,
                "loc": {
                  "start": {
                    "line": 644,
                    "column": 19
                  },
                  "end": {
                    "line": 659,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 27100,
                  "end": 27558,
                  "loc": {
                    "start": {
                      "line": 644,
                      "column": 22
                    },
                    "end": {
                      "line": 659,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 27110,
                      "end": 27158,
                      "loc": {
                        "start": {
                          "line": 645,
                          "column": 8
                        },
                        "end": {
                          "line": 645,
                          "column": 56
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 27114,
                          "end": 27157,
                          "loc": {
                            "start": {
                              "line": 645,
                              "column": 12
                            },
                            "end": {
                              "line": 645,
                              "column": 55
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 27114,
                            "end": 27125,
                            "loc": {
                              "start": {
                                "line": 645,
                                "column": 12
                              },
                              "end": {
                                "line": 645,
                                "column": 23
                              }
                            },
                            "name": "constraints"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 27128,
                            "end": 27157,
                            "loc": {
                              "start": {
                                "line": 645,
                                "column": 26
                              },
                              "end": {
                                "line": 645,
                                "column": 55
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 27128,
                              "end": 27155,
                              "loc": {
                                "start": {
                                  "line": 645,
                                  "column": 26
                                },
                                "end": {
                                  "line": 645,
                                  "column": 53
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 27128,
                                "end": 27132,
                                "loc": {
                                  "start": {
                                    "line": 645,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 645,
                                    "column": 30
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 27133,
                                "end": 27155,
                                "loc": {
                                  "start": {
                                    "line": 645,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 645,
                                    "column": 53
                                  }
                                },
                                "name": "getConstraintsOnSketch"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 27168,
                      "end": 27301,
                      "loc": {
                        "start": {
                          "line": 647,
                          "column": 8
                        },
                        "end": {
                          "line": 650,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 27168,
                        "end": 27300,
                        "loc": {
                          "start": {
                            "line": 647,
                            "column": 8
                          },
                          "end": {
                            "line": 650,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 27168,
                          "end": 27187,
                          "loc": {
                            "start": {
                              "line": 647,
                              "column": 8
                            },
                            "end": {
                              "line": 647,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 27168,
                            "end": 27179,
                            "loc": {
                              "start": {
                                "line": 647,
                                "column": 8
                              },
                              "end": {
                                "line": 647,
                                "column": 19
                              }
                            },
                            "name": "constraints"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 27180,
                            "end": 27187,
                            "loc": {
                              "start": {
                                "line": 647,
                                "column": 20
                              },
                              "end": {
                                "line": 647,
                                "column": 27
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 27188,
                            "end": 27299,
                            "loc": {
                              "start": {
                                "line": 647,
                                "column": 28
                              },
                              "end": {
                                "line": 650,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 27188,
                                "end": 27193,
                                "loc": {
                                  "start": {
                                    "line": 647,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 647,
                                    "column": 33
                                  }
                                },
                                "name": "child"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 27197,
                              "end": 27299,
                              "loc": {
                                "start": {
                                  "line": 647,
                                  "column": 37
                                },
                                "end": {
                                  "line": 650,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 27211,
                                  "end": 27263,
                                  "loc": {
                                    "start": {
                                      "line": 648,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 648,
                                      "column": 64
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 27211,
                                    "end": 27262,
                                    "loc": {
                                      "start": {
                                        "line": 648,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 648,
                                        "column": 63
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 27211,
                                      "end": 27229,
                                      "loc": {
                                        "start": {
                                          "line": 648,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 648,
                                          "column": 30
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 27211,
                                        "end": 27221,
                                        "loc": {
                                          "start": {
                                            "line": 648,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 648,
                                            "column": 22
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 27211,
                                          "end": 27216,
                                          "loc": {
                                            "start": {
                                              "line": 648,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 648,
                                              "column": 17
                                            }
                                          },
                                          "name": "child"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 27217,
                                          "end": 27221,
                                          "loc": {
                                            "start": {
                                              "line": 648,
                                              "column": 18
                                            },
                                            "end": {
                                              "line": 648,
                                              "column": 22
                                            }
                                          },
                                          "name": "args"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 27222,
                                        "end": 27229,
                                        "loc": {
                                          "start": {
                                            "line": 648,
                                            "column": 23
                                          },
                                          "end": {
                                            "line": 648,
                                            "column": 30
                                          }
                                        },
                                        "name": "forEach"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "ArrowFunctionExpression",
                                        "start": 27230,
                                        "end": 27261,
                                        "loc": {
                                          "start": {
                                            "line": 648,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 648,
                                            "column": 62
                                          }
                                        },
                                        "id": null,
                                        "generator": false,
                                        "expression": false,
                                        "async": false,
                                        "params": [
                                          {
                                            "type": "Identifier",
                                            "start": 27230,
                                            "end": 27233,
                                            "loc": {
                                              "start": {
                                                "line": 648,
                                                "column": 31
                                              },
                                              "end": {
                                                "line": 648,
                                                "column": 34
                                              }
                                            },
                                            "name": "arg"
                                          }
                                        ],
                                        "body": {
                                          "type": "BlockStatement",
                                          "start": 27237,
                                          "end": 27261,
                                          "loc": {
                                            "start": {
                                              "line": 648,
                                              "column": 38
                                            },
                                            "end": {
                                              "line": 648,
                                              "column": 62
                                            }
                                          },
                                          "body": [
                                            {
                                              "type": "ExpressionStatement",
                                              "start": 27239,
                                              "end": 27259,
                                              "loc": {
                                                "start": {
                                                  "line": 648,
                                                  "column": 40
                                                },
                                                "end": {
                                                  "line": 648,
                                                  "column": 60
                                                }
                                              },
                                              "expression": {
                                                "type": "AssignmentExpression",
                                                "start": 27239,
                                                "end": 27258,
                                                "loc": {
                                                  "start": {
                                                    "line": 648,
                                                    "column": 40
                                                  },
                                                  "end": {
                                                    "line": 648,
                                                    "column": 59
                                                  }
                                                },
                                                "operator": "=",
                                                "left": {
                                                  "type": "MemberExpression",
                                                  "start": 27239,
                                                  "end": 27250,
                                                  "loc": {
                                                    "start": {
                                                      "line": 648,
                                                      "column": 40
                                                    },
                                                    "end": {
                                                      "line": 648,
                                                      "column": 51
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 27239,
                                                    "end": 27242,
                                                    "loc": {
                                                      "start": {
                                                        "line": 648,
                                                        "column": 40
                                                      },
                                                      "end": {
                                                        "line": 648,
                                                        "column": 43
                                                      }
                                                    },
                                                    "name": "arg"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 27243,
                                                    "end": 27250,
                                                    "loc": {
                                                      "start": {
                                                        "line": 648,
                                                        "column": 44
                                                      },
                                                      "end": {
                                                        "line": 648,
                                                        "column": 51
                                                      }
                                                    },
                                                    "name": "hovered"
                                                  },
                                                  "computed": false
                                                },
                                                "right": {
                                                  "type": "Literal",
                                                  "start": 27253,
                                                  "end": 27258,
                                                  "loc": {
                                                    "start": {
                                                      "line": 648,
                                                      "column": 54
                                                    },
                                                    "end": {
                                                      "line": 648,
                                                      "column": 59
                                                    }
                                                  },
                                                  "value": false,
                                                  "rawValue": false,
                                                  "raw": "false"
                                                }
                                              }
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 27276,
                                  "end": 27289,
                                  "loc": {
                                    "start": {
                                      "line": 649,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 649,
                                      "column": 25
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 27276,
                                    "end": 27288,
                                    "loc": {
                                      "start": {
                                        "line": 649,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 649,
                                        "column": 24
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 27276,
                                      "end": 27286,
                                      "loc": {
                                        "start": {
                                          "line": 649,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 649,
                                          "column": 22
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 27276,
                                        "end": 27281,
                                        "loc": {
                                          "start": {
                                            "line": 649,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 649,
                                            "column": 17
                                          }
                                        },
                                        "name": "child"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 27282,
                                        "end": 27286,
                                        "loc": {
                                          "start": {
                                            "line": 649,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 649,
                                            "column": 22
                                          }
                                        },
                                        "name": "hide"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 27311,
                      "end": 27552,
                      "loc": {
                        "start": {
                          "line": 652,
                          "column": 8
                        },
                        "end": {
                          "line": 658,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 27311,
                        "end": 27551,
                        "loc": {
                          "start": {
                            "line": 652,
                            "column": 8
                          },
                          "end": {
                            "line": 658,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 27311,
                          "end": 27344,
                          "loc": {
                            "start": {
                              "line": 652,
                              "column": 8
                            },
                            "end": {
                              "line": 652,
                              "column": 41
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 27311,
                            "end": 27336,
                            "loc": {
                              "start": {
                                "line": 652,
                                "column": 8
                              },
                              "end": {
                                "line": 652,
                                "column": 33
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 27311,
                              "end": 27334,
                              "loc": {
                                "start": {
                                  "line": 652,
                                  "column": 8
                                },
                                "end": {
                                  "line": 652,
                                  "column": 31
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 27311,
                                "end": 27315,
                                "loc": {
                                  "start": {
                                    "line": 652,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 652,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 27316,
                                "end": 27334,
                                "loc": {
                                  "start": {
                                    "line": 652,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 652,
                                    "column": 31
                                  }
                                },
                                "name": "getObjectsOnSketch"
                              },
                              "computed": false
                            },
                            "arguments": []
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 27337,
                            "end": 27344,
                            "loc": {
                              "start": {
                                "line": 652,
                                "column": 34
                              },
                              "end": {
                                "line": 652,
                                "column": 41
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 27345,
                            "end": 27550,
                            "loc": {
                              "start": {
                                "line": 652,
                                "column": 42
                              },
                              "end": {
                                "line": 658,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 27345,
                                "end": 27348,
                                "loc": {
                                  "start": {
                                    "line": 652,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 652,
                                    "column": 45
                                  }
                                },
                                "name": "obj"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 27352,
                              "end": 27550,
                              "loc": {
                                "start": {
                                  "line": 652,
                                  "column": 49
                                },
                                "end": {
                                  "line": 658,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 27366,
                                  "end": 27539,
                                  "loc": {
                                    "start": {
                                      "line": 653,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 656,
                                      "column": 15
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 27366,
                                    "end": 27538,
                                    "loc": {
                                      "start": {
                                        "line": 653,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 656,
                                        "column": 14
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 27366,
                                      "end": 27395,
                                      "loc": {
                                        "start": {
                                          "line": 653,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 653,
                                          "column": 41
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 27366,
                                        "end": 27372,
                                        "loc": {
                                          "start": {
                                            "line": 653,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 653,
                                            "column": 18
                                          }
                                        },
                                        "name": "Sketch"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 27373,
                                        "end": 27395,
                                        "loc": {
                                          "start": {
                                            "line": 653,
                                            "column": 19
                                          },
                                          "end": {
                                            "line": 653,
                                            "column": 41
                                          }
                                        },
                                        "name": "ForObjectsWithChildren"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 27396,
                                        "end": 27399,
                                        "loc": {
                                          "start": {
                                            "line": 653,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 653,
                                            "column": 45
                                          }
                                        },
                                        "name": "obj"
                                      },
                                      {
                                        "type": "FunctionExpression",
                                        "start": 27401,
                                        "end": 27537,
                                        "loc": {
                                          "start": {
                                            "line": 653,
                                            "column": 47
                                          },
                                          "end": {
                                            "line": 656,
                                            "column": 13
                                          }
                                        },
                                        "id": null,
                                        "generator": false,
                                        "expression": false,
                                        "async": false,
                                        "params": [
                                          {
                                            "type": "Identifier",
                                            "start": 27410,
                                            "end": 27413,
                                            "loc": {
                                              "start": {
                                                "line": 653,
                                                "column": 56
                                              },
                                              "end": {
                                                "line": 653,
                                                "column": 59
                                              }
                                            },
                                            "name": "arg"
                                          }
                                        ],
                                        "body": {
                                          "type": "BlockStatement",
                                          "start": 27414,
                                          "end": 27537,
                                          "loc": {
                                            "start": {
                                              "line": 653,
                                              "column": 60
                                            },
                                            "end": {
                                              "line": 656,
                                              "column": 13
                                            }
                                          },
                                          "body": [
                                            {
                                              "type": "IfStatement",
                                              "start": 27432,
                                              "end": 27523,
                                              "loc": {
                                                "start": {
                                                  "line": 654,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 655,
                                                  "column": 61
                                                }
                                              },
                                              "test": {
                                                "type": "MemberExpression",
                                                "start": 27436,
                                                "end": 27460,
                                                "loc": {
                                                  "start": {
                                                    "line": 654,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 654,
                                                    "column": 44
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 27436,
                                                  "end": 27439,
                                                  "loc": {
                                                    "start": {
                                                      "line": 654,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 654,
                                                      "column": 23
                                                    }
                                                  },
                                                  "name": "arg"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 27440,
                                                  "end": 27460,
                                                  "loc": {
                                                    "start": {
                                                      "line": 654,
                                                      "column": 24
                                                    },
                                                    "end": {
                                                      "line": 654,
                                                      "column": 44
                                                    }
                                                  },
                                                  "name": "constraintsSubstrate"
                                                },
                                                "computed": false
                                              },
                                              "consequent": {
                                                "type": "ExpressionStatement",
                                                "start": 27482,
                                                "end": 27523,
                                                "loc": {
                                                  "start": {
                                                    "line": 655,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 655,
                                                    "column": 61
                                                  }
                                                },
                                                "expression": {
                                                  "type": "AssignmentExpression",
                                                  "start": 27482,
                                                  "end": 27522,
                                                  "loc": {
                                                    "start": {
                                                      "line": 655,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 655,
                                                      "column": 60
                                                    }
                                                  },
                                                  "operator": "=",
                                                  "left": {
                                                    "type": "MemberExpression",
                                                    "start": 27482,
                                                    "end": 27514,
                                                    "loc": {
                                                      "start": {
                                                        "line": 655,
                                                        "column": 20
                                                      },
                                                      "end": {
                                                        "line": 655,
                                                        "column": 52
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "MemberExpression",
                                                      "start": 27482,
                                                      "end": 27506,
                                                      "loc": {
                                                        "start": {
                                                          "line": 655,
                                                          "column": 20
                                                        },
                                                        "end": {
                                                          "line": 655,
                                                          "column": 44
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "Identifier",
                                                        "start": 27482,
                                                        "end": 27485,
                                                        "loc": {
                                                          "start": {
                                                            "line": 655,
                                                            "column": 20
                                                          },
                                                          "end": {
                                                            "line": 655,
                                                            "column": 23
                                                          }
                                                        },
                                                        "name": "arg"
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 27486,
                                                        "end": 27506,
                                                        "loc": {
                                                          "start": {
                                                            "line": 655,
                                                            "column": 24
                                                          },
                                                          "end": {
                                                            "line": 655,
                                                            "column": 44
                                                          }
                                                        },
                                                        "name": "constraintsSubstrate"
                                                      },
                                                      "computed": false
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 27507,
                                                      "end": 27514,
                                                      "loc": {
                                                        "start": {
                                                          "line": 655,
                                                          "column": 45
                                                        },
                                                        "end": {
                                                          "line": 655,
                                                          "column": 52
                                                        }
                                                      },
                                                      "name": "visible"
                                                    },
                                                    "computed": false
                                                  },
                                                  "right": {
                                                    "type": "Literal",
                                                    "start": 27517,
                                                    "end": 27522,
                                                    "loc": {
                                                      "start": {
                                                        "line": 655,
                                                        "column": 55
                                                      },
                                                      "end": {
                                                        "line": 655,
                                                        "column": 60
                                                      }
                                                    },
                                                    "value": false,
                                                    "rawValue": false,
                                                    "raw": "false"
                                                  }
                                                }
                                              },
                                              "alternate": null
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  }
                                }
                              ]
                            }
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 27564,
              "end": 28492,
              "loc": {
                "start": {
                  "line": 661,
                  "column": 4
                },
                "end": {
                  "line": 682,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 27564,
                "end": 27581,
                "loc": {
                  "start": {
                    "line": 661,
                    "column": 4
                  },
                  "end": {
                    "line": 661,
                    "column": 21
                  }
                },
                "name": "updateConstraints"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 27581,
                "end": 28492,
                "loc": {
                  "start": {
                    "line": 661,
                    "column": 21
                  },
                  "end": {
                    "line": 682,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 27582,
                    "end": 27585,
                    "loc": {
                      "start": {
                        "line": 661,
                        "column": 22
                      },
                      "end": {
                        "line": 661,
                        "column": 25
                      }
                    },
                    "name": "obj"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 27587,
                  "end": 28492,
                  "loc": {
                    "start": {
                      "line": 661,
                      "column": 27
                    },
                    "end": {
                      "line": 682,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 27597,
                      "end": 27638,
                      "loc": {
                        "start": {
                          "line": 662,
                          "column": 8
                        },
                        "end": {
                          "line": 662,
                          "column": 49
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 27601,
                          "end": 27637,
                          "loc": {
                            "start": {
                              "line": 662,
                              "column": 12
                            },
                            "end": {
                              "line": 662,
                              "column": 48
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 27601,
                            "end": 27610,
                            "loc": {
                              "start": {
                                "line": 662,
                                "column": 12
                              },
                              "end": {
                                "line": 662,
                                "column": 21
                              }
                            },
                            "name": "substrate"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 27613,
                            "end": 27637,
                            "loc": {
                              "start": {
                                "line": 662,
                                "column": 24
                              },
                              "end": {
                                "line": 662,
                                "column": 48
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 27613,
                              "end": 27616,
                              "loc": {
                                "start": {
                                  "line": 662,
                                  "column": 24
                                },
                                "end": {
                                  "line": 662,
                                  "column": 27
                                }
                              },
                              "name": "obj"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 27617,
                              "end": 27637,
                              "loc": {
                                "start": {
                                  "line": 662,
                                  "column": 28
                                },
                                "end": {
                                  "line": 662,
                                  "column": 48
                                }
                              },
                              "name": "constraintsSubstrate"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 27647,
                      "end": 27698,
                      "loc": {
                        "start": {
                          "line": 663,
                          "column": 8
                        },
                        "end": {
                          "line": 663,
                          "column": 59
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 27651,
                          "end": 27697,
                          "loc": {
                            "start": {
                              "line": 663,
                              "column": 12
                            },
                            "end": {
                              "line": 663,
                              "column": 58
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 27651,
                            "end": 27662,
                            "loc": {
                              "start": {
                                "line": 663,
                                "column": 12
                              },
                              "end": {
                                "line": 663,
                                "column": 23
                              }
                            },
                            "name": "constraints"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 27665,
                            "end": 27697,
                            "loc": {
                              "start": {
                                "line": 663,
                                "column": 26
                              },
                              "end": {
                                "line": 663,
                                "column": 58
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 27665,
                              "end": 27692,
                              "loc": {
                                "start": {
                                  "line": 663,
                                  "column": 26
                                },
                                "end": {
                                  "line": 663,
                                  "column": 53
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 27665,
                                "end": 27669,
                                "loc": {
                                  "start": {
                                    "line": 663,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 663,
                                    "column": 30
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 27670,
                                "end": 27692,
                                "loc": {
                                  "start": {
                                    "line": 663,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 663,
                                    "column": 53
                                  }
                                },
                                "name": "getConstraintsOnSketch"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 27693,
                                "end": 27696,
                                "loc": {
                                  "start": {
                                    "line": 663,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 663,
                                    "column": 57
                                  }
                                },
                                "name": "obj"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 27708,
                      "end": 27885,
                      "loc": {
                        "start": {
                          "line": 665,
                          "column": 8
                        },
                        "end": {
                          "line": 669,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 27712,
                        "end": 27736,
                        "loc": {
                          "start": {
                            "line": 665,
                            "column": 12
                          },
                          "end": {
                            "line": 665,
                            "column": 36
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 27712,
                          "end": 27730,
                          "loc": {
                            "start": {
                              "line": 665,
                              "column": 12
                            },
                            "end": {
                              "line": 665,
                              "column": 30
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 27712,
                            "end": 27723,
                            "loc": {
                              "start": {
                                "line": 665,
                                "column": 12
                              },
                              "end": {
                                "line": 665,
                                "column": 23
                              }
                            },
                            "name": "constraints"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 27724,
                            "end": 27730,
                            "loc": {
                              "start": {
                                "line": 665,
                                "column": 24
                              },
                              "end": {
                                "line": 665,
                                "column": 30
                              }
                            },
                            "name": "length"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "Literal",
                          "start": 27735,
                          "end": 27736,
                          "loc": {
                            "start": {
                              "line": 665,
                              "column": 35
                            },
                            "end": {
                              "line": 665,
                              "column": 36
                            }
                          },
                          "value": 0,
                          "rawValue": 0,
                          "raw": "0"
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 27738,
                        "end": 27885,
                        "loc": {
                          "start": {
                            "line": 665,
                            "column": 38
                          },
                          "end": {
                            "line": 669,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 27752,
                            "end": 27793,
                            "loc": {
                              "start": {
                                "line": 666,
                                "column": 12
                              },
                              "end": {
                                "line": 666,
                                "column": 53
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 27752,
                              "end": 27792,
                              "loc": {
                                "start": {
                                  "line": 666,
                                  "column": 12
                                },
                                "end": {
                                  "line": 666,
                                  "column": 52
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 27752,
                                "end": 27784,
                                "loc": {
                                  "start": {
                                    "line": 666,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 666,
                                    "column": 44
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 27752,
                                  "end": 27776,
                                  "loc": {
                                    "start": {
                                      "line": 666,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 666,
                                      "column": 36
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 27752,
                                    "end": 27755,
                                    "loc": {
                                      "start": {
                                        "line": 666,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 666,
                                        "column": 15
                                      }
                                    },
                                    "name": "obj"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 27756,
                                    "end": 27776,
                                    "loc": {
                                      "start": {
                                        "line": 666,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 666,
                                        "column": 36
                                      }
                                    },
                                    "name": "constraintsSubstrate"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 27777,
                                  "end": 27784,
                                  "loc": {
                                    "start": {
                                      "line": 666,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 666,
                                      "column": 44
                                    }
                                  },
                                  "name": "visible"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "Literal",
                                "start": 27787,
                                "end": 27792,
                                "loc": {
                                  "start": {
                                    "line": 666,
                                    "column": 47
                                  },
                                  "end": {
                                    "line": 666,
                                    "column": 52
                                  }
                                },
                                "value": false,
                                "rawValue": false,
                                "raw": "false"
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 27806,
                            "end": 27853,
                            "loc": {
                              "start": {
                                "line": 667,
                                "column": 12
                              },
                              "end": {
                                "line": 667,
                                "column": 59
                              }
                            },
                            "expression": {
                              "type": "LogicalExpression",
                              "start": 27806,
                              "end": 27852,
                              "loc": {
                                "start": {
                                  "line": 667,
                                  "column": 12
                                },
                                "end": {
                                  "line": 667,
                                  "column": 58
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 27806,
                                "end": 27826,
                                "loc": {
                                  "start": {
                                    "line": 667,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 667,
                                    "column": 32
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 27806,
                                  "end": 27818,
                                  "loc": {
                                    "start": {
                                      "line": 667,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 667,
                                      "column": 24
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 27806,
                                    "end": 27809,
                                    "loc": {
                                      "start": {
                                        "line": 667,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 667,
                                        "column": 15
                                      }
                                    },
                                    "name": "obj"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 27810,
                                    "end": 27818,
                                    "loc": {
                                      "start": {
                                        "line": 667,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 667,
                                        "column": 24
                                      }
                                    },
                                    "name": "interact"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 27819,
                                  "end": 27826,
                                  "loc": {
                                    "start": {
                                      "line": 667,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 667,
                                      "column": 32
                                    }
                                  },
                                  "name": "unhover"
                                },
                                "computed": false
                              },
                              "operator": "&&",
                              "right": {
                                "type": "CallExpression",
                                "start": 27830,
                                "end": 27852,
                                "loc": {
                                  "start": {
                                    "line": 667,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 667,
                                    "column": 58
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 27830,
                                  "end": 27850,
                                  "loc": {
                                    "start": {
                                      "line": 667,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 667,
                                      "column": 56
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 27830,
                                    "end": 27842,
                                    "loc": {
                                      "start": {
                                        "line": 667,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 667,
                                        "column": 48
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 27830,
                                      "end": 27833,
                                      "loc": {
                                        "start": {
                                          "line": 667,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 667,
                                          "column": 39
                                        }
                                      },
                                      "name": "obj"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 27834,
                                      "end": 27842,
                                      "loc": {
                                        "start": {
                                          "line": 667,
                                          "column": 40
                                        },
                                        "end": {
                                          "line": 667,
                                          "column": 48
                                        }
                                      },
                                      "name": "interact"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 27843,
                                    "end": 27850,
                                    "loc": {
                                      "start": {
                                        "line": 667,
                                        "column": 49
                                      },
                                      "end": {
                                        "line": 667,
                                        "column": 56
                                      }
                                    },
                                    "name": "unhover"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              }
                            }
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 27866,
                            "end": 27875,
                            "loc": {
                              "start": {
                                "line": 668,
                                "column": 12
                              },
                              "end": {
                                "line": 668,
                                "column": 21
                              }
                            },
                            "argument": {
                              "type": "Literal",
                              "start": 27873,
                              "end": 27874,
                              "loc": {
                                "start": {
                                  "line": 668,
                                  "column": 19
                                },
                                "end": {
                                  "line": 668,
                                  "column": 20
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            }
                          }
                        ]
                      },
                      "alternate": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 27895,
                      "end": 27924,
                      "loc": {
                        "start": {
                          "line": 671,
                          "column": 8
                        },
                        "end": {
                          "line": 671,
                          "column": 37
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 27899,
                          "end": 27923,
                          "loc": {
                            "start": {
                              "line": 671,
                              "column": 12
                            },
                            "end": {
                              "line": 671,
                              "column": 36
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 27899,
                            "end": 27902,
                            "loc": {
                              "start": {
                                "line": 671,
                                "column": 12
                              },
                              "end": {
                                "line": 671,
                                "column": 15
                              }
                            },
                            "name": "len"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 27905,
                            "end": 27923,
                            "loc": {
                              "start": {
                                "line": 671,
                                "column": 18
                              },
                              "end": {
                                "line": 671,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 27905,
                              "end": 27916,
                              "loc": {
                                "start": {
                                  "line": 671,
                                  "column": 18
                                },
                                "end": {
                                  "line": 671,
                                  "column": 29
                                }
                              },
                              "name": "constraints"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 27917,
                              "end": 27923,
                              "loc": {
                                "start": {
                                  "line": 671,
                                  "column": 30
                                },
                                "end": {
                                  "line": 671,
                                  "column": 36
                                }
                              },
                              "name": "length"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 27933,
                      "end": 27973,
                      "loc": {
                        "start": {
                          "line": 672,
                          "column": 8
                        },
                        "end": {
                          "line": 672,
                          "column": 48
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 27937,
                          "end": 27972,
                          "loc": {
                            "start": {
                              "line": 672,
                              "column": 12
                            },
                            "end": {
                              "line": 672,
                              "column": 47
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 27937,
                            "end": 27942,
                            "loc": {
                              "start": {
                                "line": 672,
                                "column": 12
                              },
                              "end": {
                                "line": 672,
                                "column": 17
                              }
                            },
                            "name": "scale"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 27945,
                            "end": 27972,
                            "loc": {
                              "start": {
                                "line": 672,
                                "column": 20
                              },
                              "end": {
                                "line": 672,
                                "column": 47
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 27945,
                              "end": 27970,
                              "loc": {
                                "start": {
                                  "line": 672,
                                  "column": 20
                                },
                                "end": {
                                  "line": 672,
                                  "column": 45
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 27945,
                                "end": 27964,
                                "loc": {
                                  "start": {
                                    "line": 672,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 672,
                                    "column": 39
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 27945,
                                  "end": 27959,
                                  "loc": {
                                    "start": {
                                      "line": 672,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 672,
                                      "column": 34
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 27945,
                                    "end": 27956,
                                    "loc": {
                                      "start": {
                                        "line": 672,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 672,
                                        "column": 31
                                      }
                                    },
                                    "name": "constraints"
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 27957,
                                    "end": 27958,
                                    "loc": {
                                      "start": {
                                        "line": 672,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 672,
                                        "column": 33
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 27960,
                                  "end": 27964,
                                  "loc": {
                                    "start": {
                                      "line": 672,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 672,
                                      "column": 39
                                    }
                                  },
                                  "name": "mesh"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 27965,
                                "end": 27970,
                                "loc": {
                                  "start": {
                                    "line": 672,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 672,
                                    "column": 45
                                  }
                                },
                                "name": "scale"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 27971,
                              "end": 27972,
                              "loc": {
                                "start": {
                                  "line": 672,
                                  "column": 46
                                },
                                "end": {
                                  "line": 672,
                                  "column": 47
                                }
                              },
                              "name": "x"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 27982,
                      "end": 28005,
                      "loc": {
                        "start": {
                          "line": 673,
                          "column": 8
                        },
                        "end": {
                          "line": 673,
                          "column": 31
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 27986,
                          "end": 28004,
                          "loc": {
                            "start": {
                              "line": 673,
                              "column": 12
                            },
                            "end": {
                              "line": 673,
                              "column": 30
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 27986,
                            "end": 27990,
                            "loc": {
                              "start": {
                                "line": 673,
                                "column": 12
                              },
                              "end": {
                                "line": 673,
                                "column": 16
                              }
                            },
                            "name": "size"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 27993,
                            "end": 28004,
                            "loc": {
                              "start": {
                                "line": 673,
                                "column": 19
                              },
                              "end": {
                                "line": 673,
                                "column": 30
                              }
                            },
                            "left": {
                              "type": "Literal",
                              "start": 27993,
                              "end": 27996,
                              "loc": {
                                "start": {
                                  "line": 673,
                                  "column": 19
                                },
                                "end": {
                                  "line": 673,
                                  "column": 22
                                }
                              },
                              "value": 1.2,
                              "rawValue": 1.2,
                              "raw": "1.2"
                            },
                            "operator": "*",
                            "right": {
                              "type": "Identifier",
                              "start": 27999,
                              "end": 28004,
                              "loc": {
                                "start": {
                                  "line": 673,
                                  "column": 25
                                },
                                "end": {
                                  "line": 673,
                                  "column": 30
                                }
                              },
                              "name": "scale"
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 28014,
                      "end": 28086,
                      "loc": {
                        "start": {
                          "line": 674,
                          "column": 8
                        },
                        "end": {
                          "line": 674,
                          "column": 80
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 28014,
                        "end": 28085,
                        "loc": {
                          "start": {
                            "line": 674,
                            "column": 8
                          },
                          "end": {
                            "line": 674,
                            "column": 79
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 28014,
                          "end": 28033,
                          "loc": {
                            "start": {
                              "line": 674,
                              "column": 8
                            },
                            "end": {
                              "line": 674,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 28014,
                            "end": 28029,
                            "loc": {
                              "start": {
                                "line": 674,
                                "column": 8
                              },
                              "end": {
                                "line": 674,
                                "column": 23
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 28014,
                              "end": 28023,
                              "loc": {
                                "start": {
                                  "line": 674,
                                  "column": 8
                                },
                                "end": {
                                  "line": 674,
                                  "column": 17
                                }
                              },
                              "name": "substrate"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 28024,
                              "end": 28029,
                              "loc": {
                                "start": {
                                  "line": 674,
                                  "column": 18
                                },
                                "end": {
                                  "line": 674,
                                  "column": 23
                                }
                              },
                              "name": "scale"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 28030,
                            "end": 28033,
                            "loc": {
                              "start": {
                                "line": 674,
                                "column": 24
                              },
                              "end": {
                                "line": 674,
                                "column": 27
                              }
                            },
                            "name": "set"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "BinaryExpression",
                            "start": 28034,
                            "end": 28059,
                            "loc": {
                              "start": {
                                "line": 674,
                                "column": 28
                              },
                              "end": {
                                "line": 674,
                                "column": 53
                              }
                            },
                            "left": {
                              "type": "Identifier",
                              "start": 28034,
                              "end": 28038,
                              "loc": {
                                "start": {
                                  "line": 674,
                                  "column": 28
                                },
                                "end": {
                                  "line": 674,
                                  "column": 32
                                }
                              },
                              "name": "size"
                            },
                            "operator": "*",
                            "right": {
                              "type": "MemberExpression",
                              "start": 28041,
                              "end": 28059,
                              "loc": {
                                "start": {
                                  "line": 674,
                                  "column": 35
                                },
                                "end": {
                                  "line": 674,
                                  "column": 53
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 28041,
                                "end": 28052,
                                "loc": {
                                  "start": {
                                    "line": 674,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 674,
                                    "column": 46
                                  }
                                },
                                "name": "constraints"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 28053,
                                "end": 28059,
                                "loc": {
                                  "start": {
                                    "line": 674,
                                    "column": 47
                                  },
                                  "end": {
                                    "line": 674,
                                    "column": 53
                                  }
                                },
                                "name": "length"
                              },
                              "computed": false
                            }
                          },
                          {
                            "type": "Identifier",
                            "start": 28061,
                            "end": 28065,
                            "loc": {
                              "start": {
                                "line": 674,
                                "column": 55
                              },
                              "end": {
                                "line": 674,
                                "column": 59
                              }
                            },
                            "name": "size"
                          },
                          {
                            "type": "CallExpression",
                            "start": 28067,
                            "end": 28084,
                            "loc": {
                              "start": {
                                "line": 674,
                                "column": 61
                              },
                              "end": {
                                "line": 674,
                                "column": 78
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 28067,
                              "end": 28075,
                              "loc": {
                                "start": {
                                  "line": 674,
                                  "column": 61
                                },
                                "end": {
                                  "line": 674,
                                  "column": 69
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 28067,
                                "end": 28071,
                                "loc": {
                                  "start": {
                                    "line": 674,
                                    "column": 61
                                  },
                                  "end": {
                                    "line": 674,
                                    "column": 65
                                  }
                                },
                                "name": "Math"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 28072,
                                "end": 28075,
                                "loc": {
                                  "start": {
                                    "line": 674,
                                    "column": 66
                                  },
                                  "end": {
                                    "line": 674,
                                    "column": 69
                                  }
                                },
                                "name": "min"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 28076,
                                "end": 28080,
                                "loc": {
                                  "start": {
                                    "line": 674,
                                    "column": 70
                                  },
                                  "end": {
                                    "line": 674,
                                    "column": 74
                                  }
                                },
                                "name": "size"
                              },
                              {
                                "type": "Literal",
                                "start": 28082,
                                "end": 28083,
                                "loc": {
                                  "start": {
                                    "line": 674,
                                    "column": 76
                                  },
                                  "end": {
                                    "line": 674,
                                    "column": 77
                                  }
                                },
                                "value": 1,
                                "rawValue": 1,
                                "raw": "1"
                              }
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 28095,
                      "end": 28155,
                      "loc": {
                        "start": {
                          "line": 675,
                          "column": 8
                        },
                        "end": {
                          "line": 675,
                          "column": 68
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 28099,
                          "end": 28154,
                          "loc": {
                            "start": {
                              "line": 675,
                              "column": 12
                            },
                            "end": {
                              "line": 675,
                              "column": 67
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 28099,
                            "end": 28102,
                            "loc": {
                              "start": {
                                "line": 675,
                                "column": 12
                              },
                              "end": {
                                "line": 675,
                                "column": 15
                              }
                            },
                            "name": "pos"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 28105,
                            "end": 28154,
                            "loc": {
                              "start": {
                                "line": 675,
                                "column": 18
                              },
                              "end": {
                                "line": 675,
                                "column": 67
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 28105,
                              "end": 28129,
                              "loc": {
                                "start": {
                                  "line": 675,
                                  "column": 18
                                },
                                "end": {
                                  "line": 675,
                                  "column": 42
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 28105,
                                "end": 28108,
                                "loc": {
                                  "start": {
                                    "line": 675,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 675,
                                    "column": 21
                                  }
                                },
                                "name": "obj"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 28109,
                                "end": 28129,
                                "loc": {
                                  "start": {
                                    "line": 675,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 675,
                                    "column": 42
                                  }
                                },
                                "name": "getSubstratePosition"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 28130,
                                "end": 28147,
                                "loc": {
                                  "start": {
                                    "line": 675,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 675,
                                    "column": 60
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 28130,
                                  "end": 28145,
                                  "loc": {
                                    "start": {
                                      "line": 675,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 675,
                                      "column": 58
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 28130,
                                    "end": 28139,
                                    "loc": {
                                      "start": {
                                        "line": 675,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 675,
                                        "column": 52
                                      }
                                    },
                                    "name": "substrate"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 28140,
                                    "end": 28145,
                                    "loc": {
                                      "start": {
                                        "line": 675,
                                        "column": 53
                                      },
                                      "end": {
                                        "line": 675,
                                        "column": 58
                                      }
                                    },
                                    "name": "scale"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 28146,
                                  "end": 28147,
                                  "loc": {
                                    "start": {
                                      "line": 675,
                                      "column": 59
                                    },
                                    "end": {
                                      "line": 675,
                                      "column": 60
                                    }
                                  },
                                  "name": "x"
                                },
                                "computed": false
                              },
                              {
                                "type": "Identifier",
                                "start": 28149,
                                "end": 28153,
                                "loc": {
                                  "start": {
                                    "line": 675,
                                    "column": 62
                                  },
                                  "end": {
                                    "line": 675,
                                    "column": 66
                                  }
                                },
                                "name": "size"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 28164,
                      "end": 28205,
                      "loc": {
                        "start": {
                          "line": 676,
                          "column": 8
                        },
                        "end": {
                          "line": 676,
                          "column": 49
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 28164,
                        "end": 28204,
                        "loc": {
                          "start": {
                            "line": 676,
                            "column": 8
                          },
                          "end": {
                            "line": 676,
                            "column": 48
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 28164,
                          "end": 28186,
                          "loc": {
                            "start": {
                              "line": 676,
                              "column": 8
                            },
                            "end": {
                              "line": 676,
                              "column": 30
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 28164,
                            "end": 28182,
                            "loc": {
                              "start": {
                                "line": 676,
                                "column": 8
                              },
                              "end": {
                                "line": 676,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 28164,
                              "end": 28173,
                              "loc": {
                                "start": {
                                  "line": 676,
                                  "column": 8
                                },
                                "end": {
                                  "line": 676,
                                  "column": 17
                                }
                              },
                              "name": "substrate"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 28174,
                              "end": 28182,
                              "loc": {
                                "start": {
                                  "line": 676,
                                  "column": 18
                                },
                                "end": {
                                  "line": 676,
                                  "column": 26
                                }
                              },
                              "name": "position"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 28183,
                            "end": 28186,
                            "loc": {
                              "start": {
                                "line": 676,
                                "column": 27
                              },
                              "end": {
                                "line": 676,
                                "column": 30
                              }
                            },
                            "name": "set"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 28187,
                            "end": 28192,
                            "loc": {
                              "start": {
                                "line": 676,
                                "column": 31
                              },
                              "end": {
                                "line": 676,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 28187,
                              "end": 28190,
                              "loc": {
                                "start": {
                                  "line": 676,
                                  "column": 31
                                },
                                "end": {
                                  "line": 676,
                                  "column": 34
                                }
                              },
                              "name": "pos"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 28191,
                              "end": 28192,
                              "loc": {
                                "start": {
                                  "line": 676,
                                  "column": 35
                                },
                                "end": {
                                  "line": 676,
                                  "column": 36
                                }
                              },
                              "name": "x"
                            },
                            "computed": false
                          },
                          {
                            "type": "MemberExpression",
                            "start": 28194,
                            "end": 28199,
                            "loc": {
                              "start": {
                                "line": 676,
                                "column": 38
                              },
                              "end": {
                                "line": 676,
                                "column": 43
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 28194,
                              "end": 28197,
                              "loc": {
                                "start": {
                                  "line": 676,
                                  "column": 38
                                },
                                "end": {
                                  "line": 676,
                                  "column": 41
                                }
                              },
                              "name": "pos"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 28198,
                              "end": 28199,
                              "loc": {
                                "start": {
                                  "line": 676,
                                  "column": 42
                                },
                                "end": {
                                  "line": 676,
                                  "column": 43
                                }
                              },
                              "name": "y"
                            },
                            "computed": false
                          },
                          {
                            "type": "UnaryExpression",
                            "start": 28201,
                            "end": 28203,
                            "loc": {
                              "start": {
                                "line": 676,
                                "column": 45
                              },
                              "end": {
                                "line": 676,
                                "column": 47
                              }
                            },
                            "operator": "-",
                            "prefix": true,
                            "argument": {
                              "type": "Literal",
                              "start": 28202,
                              "end": 28203,
                              "loc": {
                                "start": {
                                  "line": 676,
                                  "column": 46
                                },
                                "end": {
                                  "line": 676,
                                  "column": 47
                                }
                              },
                              "value": 1,
                              "rawValue": 1,
                              "raw": "1"
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 28214,
                      "end": 28292,
                      "loc": {
                        "start": {
                          "line": 677,
                          "column": 8
                        },
                        "end": {
                          "line": 677,
                          "column": 86
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 28218,
                          "end": 28291,
                          "loc": {
                            "start": {
                              "line": 677,
                              "column": 12
                            },
                            "end": {
                              "line": 677,
                              "column": 85
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 28218,
                            "end": 28227,
                            "loc": {
                              "start": {
                                "line": 677,
                                "column": 12
                              },
                              "end": {
                                "line": 677,
                                "column": 21
                              }
                            },
                            "name": "mostLeftX"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 28230,
                            "end": 28291,
                            "loc": {
                              "start": {
                                "line": 677,
                                "column": 24
                              },
                              "end": {
                                "line": 677,
                                "column": 85
                              }
                            },
                            "left": {
                              "type": "BinaryExpression",
                              "start": 28230,
                              "end": 28267,
                              "loc": {
                                "start": {
                                  "line": 677,
                                  "column": 24
                                },
                                "end": {
                                  "line": 677,
                                  "column": 61
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 28230,
                                "end": 28250,
                                "loc": {
                                  "start": {
                                    "line": 677,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 677,
                                    "column": 44
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 28230,
                                  "end": 28248,
                                  "loc": {
                                    "start": {
                                      "line": 677,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 677,
                                      "column": 42
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 28230,
                                    "end": 28239,
                                    "loc": {
                                      "start": {
                                        "line": 677,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 677,
                                        "column": 33
                                      }
                                    },
                                    "name": "substrate"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 28240,
                                    "end": 28248,
                                    "loc": {
                                      "start": {
                                        "line": 677,
                                        "column": 34
                                      },
                                      "end": {
                                        "line": 677,
                                        "column": 42
                                      }
                                    },
                                    "name": "position"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 28249,
                                  "end": 28250,
                                  "loc": {
                                    "start": {
                                      "line": 677,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 677,
                                      "column": 44
                                    }
                                  },
                                  "name": "x"
                                },
                                "computed": false
                              },
                              "operator": "+",
                              "right": {
                                "type": "MemberExpression",
                                "start": 28253,
                                "end": 28267,
                                "loc": {
                                  "start": {
                                    "line": 677,
                                    "column": 47
                                  },
                                  "end": {
                                    "line": 677,
                                    "column": 61
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 28253,
                                  "end": 28265,
                                  "loc": {
                                    "start": {
                                      "line": 677,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 677,
                                      "column": 59
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 28253,
                                    "end": 28256,
                                    "loc": {
                                      "start": {
                                        "line": 677,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 677,
                                        "column": 50
                                      }
                                    },
                                    "name": "obj"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 28257,
                                    "end": 28265,
                                    "loc": {
                                      "start": {
                                        "line": 677,
                                        "column": 51
                                      },
                                      "end": {
                                        "line": 677,
                                        "column": 59
                                      }
                                    },
                                    "name": "position"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 28266,
                                  "end": 28267,
                                  "loc": {
                                    "start": {
                                      "line": 677,
                                      "column": 60
                                    },
                                    "end": {
                                      "line": 677,
                                      "column": 61
                                    }
                                  },
                                  "name": "x"
                                },
                                "computed": false
                              }
                            },
                            "operator": "-",
                            "right": {
                              "type": "BinaryExpression",
                              "start": 28270,
                              "end": 28291,
                              "loc": {
                                "start": {
                                  "line": 677,
                                  "column": 64
                                },
                                "end": {
                                  "line": 677,
                                  "column": 85
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 28270,
                                "end": 28287,
                                "loc": {
                                  "start": {
                                    "line": 677,
                                    "column": 64
                                  },
                                  "end": {
                                    "line": 677,
                                    "column": 81
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 28270,
                                  "end": 28285,
                                  "loc": {
                                    "start": {
                                      "line": 677,
                                      "column": 64
                                    },
                                    "end": {
                                      "line": 677,
                                      "column": 79
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 28270,
                                    "end": 28279,
                                    "loc": {
                                      "start": {
                                        "line": 677,
                                        "column": 64
                                      },
                                      "end": {
                                        "line": 677,
                                        "column": 73
                                      }
                                    },
                                    "name": "substrate"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 28280,
                                    "end": 28285,
                                    "loc": {
                                      "start": {
                                        "line": 677,
                                        "column": 74
                                      },
                                      "end": {
                                        "line": 677,
                                        "column": 79
                                      }
                                    },
                                    "name": "scale"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 28286,
                                  "end": 28287,
                                  "loc": {
                                    "start": {
                                      "line": 677,
                                      "column": 80
                                    },
                                    "end": {
                                      "line": 677,
                                      "column": 81
                                    }
                                  },
                                  "name": "x"
                                },
                                "computed": false
                              },
                              "operator": "/",
                              "right": {
                                "type": "Literal",
                                "start": 28290,
                                "end": 28291,
                                "loc": {
                                  "start": {
                                    "line": 677,
                                    "column": 84
                                  },
                                  "end": {
                                    "line": 677,
                                    "column": 85
                                  }
                                },
                                "value": 2,
                                "rawValue": 2,
                                "raw": "2"
                              }
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 28301,
                      "end": 28353,
                      "loc": {
                        "start": {
                          "line": 678,
                          "column": 8
                        },
                        "end": {
                          "line": 678,
                          "column": 60
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 28305,
                          "end": 28352,
                          "loc": {
                            "start": {
                              "line": 678,
                              "column": 12
                            },
                            "end": {
                              "line": 678,
                              "column": 59
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 28305,
                            "end": 28312,
                            "loc": {
                              "start": {
                                "line": 678,
                                "column": 12
                              },
                              "end": {
                                "line": 678,
                                "column": 19
                              }
                            },
                            "name": "middleY"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 28315,
                            "end": 28352,
                            "loc": {
                              "start": {
                                "line": 678,
                                "column": 22
                              },
                              "end": {
                                "line": 678,
                                "column": 59
                              }
                            },
                            "left": {
                              "type": "MemberExpression",
                              "start": 28315,
                              "end": 28335,
                              "loc": {
                                "start": {
                                  "line": 678,
                                  "column": 22
                                },
                                "end": {
                                  "line": 678,
                                  "column": 42
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 28315,
                                "end": 28333,
                                "loc": {
                                  "start": {
                                    "line": 678,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 678,
                                    "column": 40
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 28315,
                                  "end": 28324,
                                  "loc": {
                                    "start": {
                                      "line": 678,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 678,
                                      "column": 31
                                    }
                                  },
                                  "name": "substrate"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 28325,
                                  "end": 28333,
                                  "loc": {
                                    "start": {
                                      "line": 678,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 678,
                                      "column": 40
                                    }
                                  },
                                  "name": "position"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 28334,
                                "end": 28335,
                                "loc": {
                                  "start": {
                                    "line": 678,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 678,
                                    "column": 42
                                  }
                                },
                                "name": "y"
                              },
                              "computed": false
                            },
                            "operator": "+",
                            "right": {
                              "type": "MemberExpression",
                              "start": 28338,
                              "end": 28352,
                              "loc": {
                                "start": {
                                  "line": 678,
                                  "column": 45
                                },
                                "end": {
                                  "line": 678,
                                  "column": 59
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 28338,
                                "end": 28350,
                                "loc": {
                                  "start": {
                                    "line": 678,
                                    "column": 45
                                  },
                                  "end": {
                                    "line": 678,
                                    "column": 57
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 28338,
                                  "end": 28341,
                                  "loc": {
                                    "start": {
                                      "line": 678,
                                      "column": 45
                                    },
                                    "end": {
                                      "line": 678,
                                      "column": 48
                                    }
                                  },
                                  "name": "obj"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 28342,
                                  "end": 28350,
                                  "loc": {
                                    "start": {
                                      "line": 678,
                                      "column": 49
                                    },
                                    "end": {
                                      "line": 678,
                                      "column": 57
                                    }
                                  },
                                  "name": "position"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 28351,
                                "end": 28352,
                                "loc": {
                                  "start": {
                                    "line": 678,
                                    "column": 58
                                  },
                                  "end": {
                                    "line": 678,
                                    "column": 59
                                  }
                                },
                                "name": "y"
                              },
                              "computed": false
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ForStatement",
                      "start": 28362,
                      "end": 28486,
                      "loc": {
                        "start": {
                          "line": 679,
                          "column": 8
                        },
                        "end": {
                          "line": 681,
                          "column": 9
                        }
                      },
                      "init": {
                        "type": "VariableDeclaration",
                        "start": 28367,
                        "end": 28376,
                        "loc": {
                          "start": {
                            "line": 679,
                            "column": 13
                          },
                          "end": {
                            "line": 679,
                            "column": 22
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 28371,
                            "end": 28376,
                            "loc": {
                              "start": {
                                "line": 679,
                                "column": 17
                              },
                              "end": {
                                "line": 679,
                                "column": 22
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 28371,
                              "end": 28372,
                              "loc": {
                                "start": {
                                  "line": 679,
                                  "column": 17
                                },
                                "end": {
                                  "line": 679,
                                  "column": 18
                                }
                              },
                              "name": "i"
                            },
                            "init": {
                              "type": "Literal",
                              "start": 28375,
                              "end": 28376,
                              "loc": {
                                "start": {
                                  "line": 679,
                                  "column": 21
                                },
                                "end": {
                                  "line": 679,
                                  "column": 22
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            }
                          }
                        ],
                        "kind": "var"
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 28378,
                        "end": 28385,
                        "loc": {
                          "start": {
                            "line": 679,
                            "column": 24
                          },
                          "end": {
                            "line": 679,
                            "column": 31
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 28378,
                          "end": 28379,
                          "loc": {
                            "start": {
                              "line": 679,
                              "column": 24
                            },
                            "end": {
                              "line": 679,
                              "column": 25
                            }
                          },
                          "name": "i"
                        },
                        "operator": "<",
                        "right": {
                          "type": "Identifier",
                          "start": 28382,
                          "end": 28385,
                          "loc": {
                            "start": {
                              "line": 679,
                              "column": 28
                            },
                            "end": {
                              "line": 679,
                              "column": 31
                            }
                          },
                          "name": "len"
                        }
                      },
                      "update": {
                        "type": "UpdateExpression",
                        "start": 28387,
                        "end": 28390,
                        "loc": {
                          "start": {
                            "line": 679,
                            "column": 33
                          },
                          "end": {
                            "line": 679,
                            "column": 36
                          }
                        },
                        "operator": "++",
                        "prefix": true,
                        "argument": {
                          "type": "Identifier",
                          "start": 28389,
                          "end": 28390,
                          "loc": {
                            "start": {
                              "line": 679,
                              "column": 35
                            },
                            "end": {
                              "line": 679,
                              "column": 36
                            }
                          },
                          "name": "i"
                        }
                      },
                      "body": {
                        "type": "BlockStatement",
                        "start": 28392,
                        "end": 28486,
                        "loc": {
                          "start": {
                            "line": 679,
                            "column": 38
                          },
                          "end": {
                            "line": 681,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 28406,
                            "end": 28476,
                            "loc": {
                              "start": {
                                "line": 680,
                                "column": 12
                              },
                              "end": {
                                "line": 680,
                                "column": 82
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 28406,
                              "end": 28475,
                              "loc": {
                                "start": {
                                  "line": 680,
                                  "column": 12
                                },
                                "end": {
                                  "line": 680,
                                  "column": 81
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 28406,
                                "end": 28433,
                                "loc": {
                                  "start": {
                                    "line": 680,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 680,
                                    "column": 39
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 28406,
                                  "end": 28429,
                                  "loc": {
                                    "start": {
                                      "line": 680,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 680,
                                      "column": 35
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 28406,
                                    "end": 28420,
                                    "loc": {
                                      "start": {
                                        "line": 680,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 680,
                                        "column": 26
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 28406,
                                      "end": 28417,
                                      "loc": {
                                        "start": {
                                          "line": 680,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 680,
                                          "column": 23
                                        }
                                      },
                                      "name": "constraints"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 28418,
                                      "end": 28419,
                                      "loc": {
                                        "start": {
                                          "line": 680,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 680,
                                          "column": 25
                                        }
                                      },
                                      "name": "i"
                                    },
                                    "computed": true
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 28421,
                                    "end": 28429,
                                    "loc": {
                                      "start": {
                                        "line": 680,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 680,
                                        "column": 35
                                      }
                                    },
                                    "name": "position"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 28430,
                                  "end": 28433,
                                  "loc": {
                                    "start": {
                                      "line": 680,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 680,
                                      "column": 39
                                    }
                                  },
                                  "name": "set"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 28434,
                                  "end": 28462,
                                  "loc": {
                                    "start": {
                                      "line": 680,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 680,
                                      "column": 68
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 28434,
                                    "end": 28443,
                                    "loc": {
                                      "start": {
                                        "line": 680,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 680,
                                        "column": 49
                                      }
                                    },
                                    "name": "mostLeftX"
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "BinaryExpression",
                                    "start": 28446,
                                    "end": 28462,
                                    "loc": {
                                      "start": {
                                        "line": 680,
                                        "column": 52
                                      },
                                      "end": {
                                        "line": 680,
                                        "column": 68
                                      }
                                    },
                                    "left": {
                                      "type": "BinaryExpression",
                                      "start": 28447,
                                      "end": 28454,
                                      "loc": {
                                        "start": {
                                          "line": 680,
                                          "column": 53
                                        },
                                        "end": {
                                          "line": 680,
                                          "column": 60
                                        }
                                      },
                                      "left": {
                                        "type": "Identifier",
                                        "start": 28447,
                                        "end": 28448,
                                        "loc": {
                                          "start": {
                                            "line": 680,
                                            "column": 53
                                          },
                                          "end": {
                                            "line": 680,
                                            "column": 54
                                          }
                                        },
                                        "name": "i"
                                      },
                                      "operator": "+",
                                      "right": {
                                        "type": "Literal",
                                        "start": 28451,
                                        "end": 28454,
                                        "loc": {
                                          "start": {
                                            "line": 680,
                                            "column": 57
                                          },
                                          "end": {
                                            "line": 680,
                                            "column": 60
                                          }
                                        },
                                        "value": 0.5,
                                        "rawValue": 0.5,
                                        "raw": "0.5"
                                      },
                                      "parenthesizedExpression": true
                                    },
                                    "operator": "*",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 28458,
                                      "end": 28462,
                                      "loc": {
                                        "start": {
                                          "line": 680,
                                          "column": 64
                                        },
                                        "end": {
                                          "line": 680,
                                          "column": 68
                                        }
                                      },
                                      "name": "size"
                                    }
                                  }
                                },
                                {
                                  "type": "Identifier",
                                  "start": 28464,
                                  "end": 28471,
                                  "loc": {
                                    "start": {
                                      "line": 680,
                                      "column": 70
                                    },
                                    "end": {
                                      "line": 680,
                                      "column": 77
                                    }
                                  },
                                  "name": "middleY"
                                },
                                {
                                  "type": "Literal",
                                  "start": 28473,
                                  "end": 28474,
                                  "loc": {
                                    "start": {
                                      "line": 680,
                                      "column": 79
                                    },
                                    "end": {
                                      "line": 680,
                                      "column": 80
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 28498,
              "end": 28673,
              "loc": {
                "start": {
                  "line": 684,
                  "column": 4
                },
                "end": {
                  "line": 689,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 28498,
                "end": 28506,
                "loc": {
                  "start": {
                    "line": 684,
                    "column": 4
                  },
                  "end": {
                    "line": 684,
                    "column": 12
                  }
                },
                "name": "getState"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 28506,
                "end": 28673,
                "loc": {
                  "start": {
                    "line": 684,
                    "column": 12
                  },
                  "end": {
                    "line": 689,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 28509,
                  "end": 28673,
                  "loc": {
                    "start": {
                      "line": 684,
                      "column": 15
                    },
                    "end": {
                      "line": 689,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 28519,
                      "end": 28541,
                      "loc": {
                        "start": {
                          "line": 685,
                          "column": 8
                        },
                        "end": {
                          "line": 685,
                          "column": 30
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 28523,
                          "end": 28540,
                          "loc": {
                            "start": {
                              "line": 685,
                              "column": 12
                            },
                            "end": {
                              "line": 685,
                              "column": 29
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 28523,
                            "end": 28528,
                            "loc": {
                              "start": {
                                "line": 685,
                                "column": 12
                              },
                              "end": {
                                "line": 685,
                                "column": 17
                              }
                            },
                            "name": "state"
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 28531,
                            "end": 28540,
                            "loc": {
                              "start": {
                                "line": 685,
                                "column": 20
                              },
                              "end": {
                                "line": 685,
                                "column": 29
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 28535,
                              "end": 28538,
                              "loc": {
                                "start": {
                                  "line": 685,
                                  "column": 24
                                },
                                "end": {
                                  "line": 685,
                                  "column": 27
                                }
                              },
                              "name": "Map"
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ForOfStatement",
                      "start": 28550,
                      "end": 28645,
                      "loc": {
                        "start": {
                          "line": 686,
                          "column": 8
                        },
                        "end": {
                          "line": 687,
                          "column": 49
                        }
                      },
                      "left": {
                        "type": "VariableDeclaration",
                        "start": 28555,
                        "end": 28565,
                        "loc": {
                          "start": {
                            "line": 686,
                            "column": 13
                          },
                          "end": {
                            "line": 686,
                            "column": 23
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 28559,
                            "end": 28565,
                            "loc": {
                              "start": {
                                "line": 686,
                                "column": 17
                              },
                              "end": {
                                "line": 686,
                                "column": 23
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 28559,
                              "end": 28565,
                              "loc": {
                                "start": {
                                  "line": 686,
                                  "column": 17
                                },
                                "end": {
                                  "line": 686,
                                  "column": 23
                                }
                              },
                              "name": "object"
                            },
                            "init": null
                          }
                        ],
                        "kind": "var"
                      },
                      "right": {
                        "type": "CallExpression",
                        "start": 28569,
                        "end": 28594,
                        "loc": {
                          "start": {
                            "line": 686,
                            "column": 27
                          },
                          "end": {
                            "line": 686,
                            "column": 52
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 28569,
                          "end": 28592,
                          "loc": {
                            "start": {
                              "line": 686,
                              "column": 27
                            },
                            "end": {
                              "line": 686,
                              "column": 50
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 28569,
                            "end": 28573,
                            "loc": {
                              "start": {
                                "line": 686,
                                "column": 27
                              },
                              "end": {
                                "line": 686,
                                "column": 31
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 28574,
                            "end": 28592,
                            "loc": {
                              "start": {
                                "line": 686,
                                "column": 32
                              },
                              "end": {
                                "line": 686,
                                "column": 50
                              }
                            },
                            "name": "getObjectsOnSketch"
                          },
                          "computed": false
                        },
                        "arguments": []
                      },
                      "body": {
                        "type": "ExpressionStatement",
                        "start": 28608,
                        "end": 28645,
                        "loc": {
                          "start": {
                            "line": 687,
                            "column": 12
                          },
                          "end": {
                            "line": 687,
                            "column": 49
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 28608,
                          "end": 28644,
                          "loc": {
                            "start": {
                              "line": 687,
                              "column": 12
                            },
                            "end": {
                              "line": 687,
                              "column": 48
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 28608,
                            "end": 28617,
                            "loc": {
                              "start": {
                                "line": 687,
                                "column": 12
                              },
                              "end": {
                                "line": 687,
                                "column": 21
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 28608,
                              "end": 28613,
                              "loc": {
                                "start": {
                                  "line": 687,
                                  "column": 12
                                },
                                "end": {
                                  "line": 687,
                                  "column": 17
                                }
                              },
                              "name": "state"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 28614,
                              "end": 28617,
                              "loc": {
                                "start": {
                                  "line": 687,
                                  "column": 18
                                },
                                "end": {
                                  "line": 687,
                                  "column": 21
                                }
                              },
                              "name": "set"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 28618,
                              "end": 28624,
                              "loc": {
                                "start": {
                                  "line": 687,
                                  "column": 22
                                },
                                "end": {
                                  "line": 687,
                                  "column": 28
                                }
                              },
                              "name": "object"
                            },
                            {
                              "type": "CallExpression",
                              "start": 28626,
                              "end": 28643,
                              "loc": {
                                "start": {
                                  "line": 687,
                                  "column": 30
                                },
                                "end": {
                                  "line": 687,
                                  "column": 47
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 28626,
                                "end": 28641,
                                "loc": {
                                  "start": {
                                    "line": 687,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 687,
                                    "column": 45
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 28626,
                                  "end": 28632,
                                  "loc": {
                                    "start": {
                                      "line": 687,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 687,
                                      "column": 36
                                    }
                                  },
                                  "name": "object"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 28633,
                                  "end": 28641,
                                  "loc": {
                                    "start": {
                                      "line": 687,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 687,
                                      "column": 45
                                    }
                                  },
                                  "name": "getState"
                                },
                                "computed": false
                              },
                              "arguments": []
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 28654,
                      "end": 28667,
                      "loc": {
                        "start": {
                          "line": 688,
                          "column": 8
                        },
                        "end": {
                          "line": 688,
                          "column": 21
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 28661,
                        "end": 28666,
                        "loc": {
                          "start": {
                            "line": 688,
                            "column": 15
                          },
                          "end": {
                            "line": 688,
                            "column": 20
                          }
                        },
                        "name": "state"
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 28679,
              "end": 30893,
              "loc": {
                "start": {
                  "line": 691,
                  "column": 4
                },
                "end": {
                  "line": 738,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 28679,
                "end": 28705,
                "loc": {
                  "start": {
                    "line": 691,
                    "column": 4
                  },
                  "end": {
                    "line": 691,
                    "column": 30
                  }
                },
                "name": "getStateLinearContinuation"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 28705,
                "end": 30893,
                "loc": {
                  "start": {
                    "line": 691,
                    "column": 30
                  },
                  "end": {
                    "line": 738,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 28706,
                    "end": 28712,
                    "loc": {
                      "start": {
                        "line": 691,
                        "column": 31
                      },
                      "end": {
                        "line": 691,
                        "column": 37
                      }
                    },
                    "name": "states"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 28714,
                  "end": 30893,
                  "loc": {
                    "start": {
                      "line": 691,
                      "column": 39
                    },
                    "end": {
                      "line": 738,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 28724,
                      "end": 28777,
                      "loc": {
                        "start": {
                          "line": 692,
                          "column": 8
                        },
                        "end": {
                          "line": 692,
                          "column": 61
                        }
                      },
                      "test": {
                        "type": "LogicalExpression",
                        "start": 28728,
                        "end": 28768,
                        "loc": {
                          "start": {
                            "line": 692,
                            "column": 12
                          },
                          "end": {
                            "line": 692,
                            "column": 52
                          }
                        },
                        "left": {
                          "type": "BinaryExpression",
                          "start": 28728,
                          "end": 28746,
                          "loc": {
                            "start": {
                              "line": 692,
                              "column": 12
                            },
                            "end": {
                              "line": 692,
                              "column": 30
                            }
                          },
                          "left": {
                            "type": "MemberExpression",
                            "start": 28728,
                            "end": 28737,
                            "loc": {
                              "start": {
                                "line": 692,
                                "column": 12
                              },
                              "end": {
                                "line": 692,
                                "column": 21
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 28728,
                              "end": 28734,
                              "loc": {
                                "start": {
                                  "line": 692,
                                  "column": 12
                                },
                                "end": {
                                  "line": 692,
                                  "column": 18
                                }
                              },
                              "name": "states"
                            },
                            "property": {
                              "type": "Literal",
                              "start": 28735,
                              "end": 28736,
                              "loc": {
                                "start": {
                                  "line": 692,
                                  "column": 19
                                },
                                "end": {
                                  "line": 692,
                                  "column": 20
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            },
                            "computed": true
                          },
                          "operator": "===",
                          "right": {
                            "type": "Literal",
                            "start": 28742,
                            "end": 28746,
                            "loc": {
                              "start": {
                                "line": 692,
                                "column": 26
                              },
                              "end": {
                                "line": 692,
                                "column": 30
                              }
                            },
                            "value": null,
                            "rawValue": null,
                            "raw": "null"
                          }
                        },
                        "operator": "||",
                        "right": {
                          "type": "BinaryExpression",
                          "start": 28750,
                          "end": 28768,
                          "loc": {
                            "start": {
                              "line": 692,
                              "column": 34
                            },
                            "end": {
                              "line": 692,
                              "column": 52
                            }
                          },
                          "left": {
                            "type": "MemberExpression",
                            "start": 28750,
                            "end": 28759,
                            "loc": {
                              "start": {
                                "line": 692,
                                "column": 34
                              },
                              "end": {
                                "line": 692,
                                "column": 43
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 28750,
                              "end": 28756,
                              "loc": {
                                "start": {
                                  "line": 692,
                                  "column": 34
                                },
                                "end": {
                                  "line": 692,
                                  "column": 40
                                }
                              },
                              "name": "states"
                            },
                            "property": {
                              "type": "Literal",
                              "start": 28757,
                              "end": 28758,
                              "loc": {
                                "start": {
                                  "line": 692,
                                  "column": 41
                                },
                                "end": {
                                  "line": 692,
                                  "column": 42
                                }
                              },
                              "value": 1,
                              "rawValue": 1,
                              "raw": "1"
                            },
                            "computed": true
                          },
                          "operator": "===",
                          "right": {
                            "type": "Literal",
                            "start": 28764,
                            "end": 28768,
                            "loc": {
                              "start": {
                                "line": 692,
                                "column": 48
                              },
                              "end": {
                                "line": 692,
                                "column": 52
                              }
                            },
                            "value": null,
                            "rawValue": null,
                            "raw": "null"
                          }
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 28770,
                        "end": 28777,
                        "loc": {
                          "start": {
                            "line": 692,
                            "column": 54
                          },
                          "end": {
                            "line": 692,
                            "column": 61
                          }
                        },
                        "argument": null
                      },
                      "alternate": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 28786,
                      "end": 28812,
                      "loc": {
                        "start": {
                          "line": 693,
                          "column": 8
                        },
                        "end": {
                          "line": 693,
                          "column": 34
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 28790,
                          "end": 28811,
                          "loc": {
                            "start": {
                              "line": 693,
                              "column": 12
                            },
                            "end": {
                              "line": 693,
                              "column": 33
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 28790,
                            "end": 28799,
                            "loc": {
                              "start": {
                                "line": 693,
                                "column": 12
                              },
                              "end": {
                                "line": 693,
                                "column": 21
                              }
                            },
                            "name": "stateDiff"
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 28802,
                            "end": 28811,
                            "loc": {
                              "start": {
                                "line": 693,
                                "column": 24
                              },
                              "end": {
                                "line": 693,
                                "column": 33
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 28806,
                              "end": 28809,
                              "loc": {
                                "start": {
                                  "line": 693,
                                  "column": 28
                                },
                                "end": {
                                  "line": 693,
                                  "column": 31
                                }
                              },
                              "name": "Map"
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "FunctionDeclaration",
                      "start": 28822,
                      "end": 29094,
                      "loc": {
                        "start": {
                          "line": 695,
                          "column": 8
                        },
                        "end": {
                          "line": 699,
                          "column": 9
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 28831,
                        "end": 28843,
                        "loc": {
                          "start": {
                            "line": 695,
                            "column": 17
                          },
                          "end": {
                            "line": 695,
                            "column": 29
                          }
                        },
                        "name": "getPointDiff"
                      },
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 28845,
                          "end": 28851,
                          "loc": {
                            "start": {
                              "line": 695,
                              "column": 31
                            },
                            "end": {
                              "line": 695,
                              "column": 37
                            }
                          },
                          "name": "states"
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "start": 28853,
                        "end": 29094,
                        "loc": {
                          "start": {
                            "line": 695,
                            "column": 39
                          },
                          "end": {
                            "line": 699,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "IfStatement",
                            "start": 28867,
                            "end": 28930,
                            "loc": {
                              "start": {
                                "line": 696,
                                "column": 12
                              },
                              "end": {
                                "line": 696,
                                "column": 75
                              }
                            },
                            "test": {
                              "type": "UnaryExpression",
                              "start": 28871,
                              "end": 28893,
                              "loc": {
                                "start": {
                                  "line": 696,
                                  "column": 16
                                },
                                "end": {
                                  "line": 696,
                                  "column": 38
                                }
                              },
                              "operator": "!",
                              "prefix": true,
                              "argument": {
                                "type": "CallExpression",
                                "start": 28872,
                                "end": 28893,
                                "loc": {
                                  "start": {
                                    "line": 696,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 696,
                                    "column": 38
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 28872,
                                  "end": 28885,
                                  "loc": {
                                    "start": {
                                      "line": 696,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 696,
                                      "column": 30
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 28872,
                                    "end": 28877,
                                    "loc": {
                                      "start": {
                                        "line": 696,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 696,
                                        "column": 22
                                      }
                                    },
                                    "name": "Array"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 28878,
                                    "end": 28885,
                                    "loc": {
                                      "start": {
                                        "line": 696,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 696,
                                        "column": 30
                                      }
                                    },
                                    "name": "isArray"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 28886,
                                    "end": 28892,
                                    "loc": {
                                      "start": {
                                        "line": 696,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 696,
                                        "column": 37
                                      }
                                    },
                                    "name": "states"
                                  }
                                ]
                              }
                            },
                            "consequent": {
                              "type": "ReturnStatement",
                              "start": 28895,
                              "end": 28930,
                              "loc": {
                                "start": {
                                  "line": 696,
                                  "column": 40
                                },
                                "end": {
                                  "line": 696,
                                  "column": 75
                                }
                              },
                              "argument": {
                                "type": "NewExpression",
                                "start": 28902,
                                "end": 28929,
                                "loc": {
                                  "start": {
                                    "line": 696,
                                    "column": 47
                                  },
                                  "end": {
                                    "line": 696,
                                    "column": 74
                                  }
                                },
                                "callee": {
                                  "type": "Identifier",
                                  "start": 28906,
                                  "end": 28909,
                                  "loc": {
                                    "start": {
                                      "line": 696,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 696,
                                      "column": 54
                                    }
                                  },
                                  "name": "Map"
                                },
                                "arguments": [
                                  {
                                    "type": "ArrayExpression",
                                    "start": 28910,
                                    "end": 28928,
                                    "loc": {
                                      "start": {
                                        "line": 696,
                                        "column": 55
                                      },
                                      "end": {
                                        "line": 696,
                                        "column": 73
                                      }
                                    },
                                    "elements": [
                                      {
                                        "type": "ArrayExpression",
                                        "start": 28911,
                                        "end": 28918,
                                        "loc": {
                                          "start": {
                                            "line": 696,
                                            "column": 56
                                          },
                                          "end": {
                                            "line": 696,
                                            "column": 63
                                          }
                                        },
                                        "elements": [
                                          {
                                            "type": "Literal",
                                            "start": 28912,
                                            "end": 28915,
                                            "loc": {
                                              "start": {
                                                "line": 696,
                                                "column": 57
                                              },
                                              "end": {
                                                "line": 696,
                                                "column": 60
                                              }
                                            },
                                            "value": "x",
                                            "rawValue": "x",
                                            "raw": "'x'"
                                          },
                                          {
                                            "type": "Literal",
                                            "start": 28916,
                                            "end": 28917,
                                            "loc": {
                                              "start": {
                                                "line": 696,
                                                "column": 61
                                              },
                                              "end": {
                                                "line": 696,
                                                "column": 62
                                              }
                                            },
                                            "value": 0,
                                            "rawValue": 0,
                                            "raw": "0"
                                          }
                                        ]
                                      },
                                      {
                                        "type": "ArrayExpression",
                                        "start": 28919,
                                        "end": 28927,
                                        "loc": {
                                          "start": {
                                            "line": 696,
                                            "column": 64
                                          },
                                          "end": {
                                            "line": 696,
                                            "column": 72
                                          }
                                        },
                                        "elements": [
                                          {
                                            "type": "Literal",
                                            "start": 28920,
                                            "end": 28923,
                                            "loc": {
                                              "start": {
                                                "line": 696,
                                                "column": 65
                                              },
                                              "end": {
                                                "line": 696,
                                                "column": 68
                                              }
                                            },
                                            "value": "y",
                                            "rawValue": "y",
                                            "raw": "'y'"
                                          },
                                          {
                                            "type": "Literal",
                                            "start": 28925,
                                            "end": 28926,
                                            "loc": {
                                              "start": {
                                                "line": 696,
                                                "column": 70
                                              },
                                              "end": {
                                                "line": 696,
                                                "column": 71
                                              }
                                            },
                                            "value": 0,
                                            "rawValue": 0,
                                            "raw": "0"
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                ]
                              }
                            },
                            "alternate": null
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 28943,
                            "end": 29084,
                            "loc": {
                              "start": {
                                "line": 697,
                                "column": 12
                              },
                              "end": {
                                "line": 698,
                                "column": 77
                              }
                            },
                            "argument": {
                              "type": "NewExpression",
                              "start": 28950,
                              "end": 29083,
                              "loc": {
                                "start": {
                                  "line": 697,
                                  "column": 19
                                },
                                "end": {
                                  "line": 698,
                                  "column": 76
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 28954,
                                "end": 28957,
                                "loc": {
                                  "start": {
                                    "line": 697,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 697,
                                    "column": 26
                                  }
                                },
                                "name": "Map"
                              },
                              "arguments": [
                                {
                                  "type": "ArrayExpression",
                                  "start": 28958,
                                  "end": 29082,
                                  "loc": {
                                    "start": {
                                      "line": 697,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 698,
                                      "column": 75
                                    }
                                  },
                                  "elements": [
                                    {
                                      "type": "ArrayExpression",
                                      "start": 28959,
                                      "end": 29005,
                                      "loc": {
                                        "start": {
                                          "line": 697,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 697,
                                          "column": 74
                                        }
                                      },
                                      "elements": [
                                        {
                                          "type": "Literal",
                                          "start": 28960,
                                          "end": 28963,
                                          "loc": {
                                            "start": {
                                              "line": 697,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 697,
                                              "column": 32
                                            }
                                          },
                                          "value": "x",
                                          "rawValue": "x",
                                          "raw": "'x'"
                                        },
                                        {
                                          "type": "BinaryExpression",
                                          "start": 28965,
                                          "end": 29004,
                                          "loc": {
                                            "start": {
                                              "line": 697,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 697,
                                              "column": 73
                                            }
                                          },
                                          "left": {
                                            "type": "CallExpression",
                                            "start": 28965,
                                            "end": 28983,
                                            "loc": {
                                              "start": {
                                                "line": 697,
                                                "column": 34
                                              },
                                              "end": {
                                                "line": 697,
                                                "column": 52
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 28965,
                                              "end": 28978,
                                              "loc": {
                                                "start": {
                                                  "line": 697,
                                                  "column": 34
                                                },
                                                "end": {
                                                  "line": 697,
                                                  "column": 47
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 28965,
                                                "end": 28974,
                                                "loc": {
                                                  "start": {
                                                    "line": 697,
                                                    "column": 34
                                                  },
                                                  "end": {
                                                    "line": 697,
                                                    "column": 43
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 28965,
                                                  "end": 28971,
                                                  "loc": {
                                                    "start": {
                                                      "line": 697,
                                                      "column": 34
                                                    },
                                                    "end": {
                                                      "line": 697,
                                                      "column": 40
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 28972,
                                                  "end": 28973,
                                                  "loc": {
                                                    "start": {
                                                      "line": 697,
                                                      "column": 41
                                                    },
                                                    "end": {
                                                      "line": 697,
                                                      "column": 42
                                                    }
                                                  },
                                                  "value": 1,
                                                  "rawValue": 1,
                                                  "raw": "1"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 28975,
                                                "end": 28978,
                                                "loc": {
                                                  "start": {
                                                    "line": 697,
                                                    "column": 44
                                                  },
                                                  "end": {
                                                    "line": 697,
                                                    "column": 47
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 28979,
                                                "end": 28982,
                                                "loc": {
                                                  "start": {
                                                    "line": 697,
                                                    "column": 48
                                                  },
                                                  "end": {
                                                    "line": 697,
                                                    "column": 51
                                                  }
                                                },
                                                "value": "x",
                                                "rawValue": "x",
                                                "raw": "'x'"
                                              }
                                            ]
                                          },
                                          "operator": "-",
                                          "right": {
                                            "type": "CallExpression",
                                            "start": 28986,
                                            "end": 29004,
                                            "loc": {
                                              "start": {
                                                "line": 697,
                                                "column": 55
                                              },
                                              "end": {
                                                "line": 697,
                                                "column": 73
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 28986,
                                              "end": 28999,
                                              "loc": {
                                                "start": {
                                                  "line": 697,
                                                  "column": 55
                                                },
                                                "end": {
                                                  "line": 697,
                                                  "column": 68
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 28986,
                                                "end": 28995,
                                                "loc": {
                                                  "start": {
                                                    "line": 697,
                                                    "column": 55
                                                  },
                                                  "end": {
                                                    "line": 697,
                                                    "column": 64
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 28986,
                                                  "end": 28992,
                                                  "loc": {
                                                    "start": {
                                                      "line": 697,
                                                      "column": 55
                                                    },
                                                    "end": {
                                                      "line": 697,
                                                      "column": 61
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 28993,
                                                  "end": 28994,
                                                  "loc": {
                                                    "start": {
                                                      "line": 697,
                                                      "column": 62
                                                    },
                                                    "end": {
                                                      "line": 697,
                                                      "column": 63
                                                    }
                                                  },
                                                  "value": 0,
                                                  "rawValue": 0,
                                                  "raw": "0"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 28996,
                                                "end": 28999,
                                                "loc": {
                                                  "start": {
                                                    "line": 697,
                                                    "column": 65
                                                  },
                                                  "end": {
                                                    "line": 697,
                                                    "column": 68
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 29000,
                                                "end": 29003,
                                                "loc": {
                                                  "start": {
                                                    "line": 697,
                                                    "column": 69
                                                  },
                                                  "end": {
                                                    "line": 697,
                                                    "column": 72
                                                  }
                                                },
                                                "value": "x",
                                                "rawValue": "x",
                                                "raw": "'x'"
                                              }
                                            ]
                                          }
                                        }
                                      ]
                                    },
                                    {
                                      "type": "ArrayExpression",
                                      "start": 29035,
                                      "end": 29081,
                                      "loc": {
                                        "start": {
                                          "line": 698,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 698,
                                          "column": 74
                                        }
                                      },
                                      "elements": [
                                        {
                                          "type": "Literal",
                                          "start": 29036,
                                          "end": 29039,
                                          "loc": {
                                            "start": {
                                              "line": 698,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 698,
                                              "column": 32
                                            }
                                          },
                                          "value": "y",
                                          "rawValue": "y",
                                          "raw": "'y'"
                                        },
                                        {
                                          "type": "BinaryExpression",
                                          "start": 29041,
                                          "end": 29080,
                                          "loc": {
                                            "start": {
                                              "line": 698,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 698,
                                              "column": 73
                                            }
                                          },
                                          "left": {
                                            "type": "CallExpression",
                                            "start": 29041,
                                            "end": 29059,
                                            "loc": {
                                              "start": {
                                                "line": 698,
                                                "column": 34
                                              },
                                              "end": {
                                                "line": 698,
                                                "column": 52
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 29041,
                                              "end": 29054,
                                              "loc": {
                                                "start": {
                                                  "line": 698,
                                                  "column": 34
                                                },
                                                "end": {
                                                  "line": 698,
                                                  "column": 47
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 29041,
                                                "end": 29050,
                                                "loc": {
                                                  "start": {
                                                    "line": 698,
                                                    "column": 34
                                                  },
                                                  "end": {
                                                    "line": 698,
                                                    "column": 43
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 29041,
                                                  "end": 29047,
                                                  "loc": {
                                                    "start": {
                                                      "line": 698,
                                                      "column": 34
                                                    },
                                                    "end": {
                                                      "line": 698,
                                                      "column": 40
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 29048,
                                                  "end": 29049,
                                                  "loc": {
                                                    "start": {
                                                      "line": 698,
                                                      "column": 41
                                                    },
                                                    "end": {
                                                      "line": 698,
                                                      "column": 42
                                                    }
                                                  },
                                                  "value": 1,
                                                  "rawValue": 1,
                                                  "raw": "1"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 29051,
                                                "end": 29054,
                                                "loc": {
                                                  "start": {
                                                    "line": 698,
                                                    "column": 44
                                                  },
                                                  "end": {
                                                    "line": 698,
                                                    "column": 47
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 29055,
                                                "end": 29058,
                                                "loc": {
                                                  "start": {
                                                    "line": 698,
                                                    "column": 48
                                                  },
                                                  "end": {
                                                    "line": 698,
                                                    "column": 51
                                                  }
                                                },
                                                "value": "y",
                                                "rawValue": "y",
                                                "raw": "'y'"
                                              }
                                            ]
                                          },
                                          "operator": "-",
                                          "right": {
                                            "type": "CallExpression",
                                            "start": 29062,
                                            "end": 29080,
                                            "loc": {
                                              "start": {
                                                "line": 698,
                                                "column": 55
                                              },
                                              "end": {
                                                "line": 698,
                                                "column": 73
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 29062,
                                              "end": 29075,
                                              "loc": {
                                                "start": {
                                                  "line": 698,
                                                  "column": 55
                                                },
                                                "end": {
                                                  "line": 698,
                                                  "column": 68
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 29062,
                                                "end": 29071,
                                                "loc": {
                                                  "start": {
                                                    "line": 698,
                                                    "column": 55
                                                  },
                                                  "end": {
                                                    "line": 698,
                                                    "column": 64
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 29062,
                                                  "end": 29068,
                                                  "loc": {
                                                    "start": {
                                                      "line": 698,
                                                      "column": 55
                                                    },
                                                    "end": {
                                                      "line": 698,
                                                      "column": 61
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 29069,
                                                  "end": 29070,
                                                  "loc": {
                                                    "start": {
                                                      "line": 698,
                                                      "column": 62
                                                    },
                                                    "end": {
                                                      "line": 698,
                                                      "column": 63
                                                    }
                                                  },
                                                  "value": 0,
                                                  "rawValue": 0,
                                                  "raw": "0"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 29072,
                                                "end": 29075,
                                                "loc": {
                                                  "start": {
                                                    "line": 698,
                                                    "column": 65
                                                  },
                                                  "end": {
                                                    "line": 698,
                                                    "column": 68
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 29076,
                                                "end": 29079,
                                                "loc": {
                                                  "start": {
                                                    "line": 698,
                                                    "column": 69
                                                  },
                                                  "end": {
                                                    "line": 698,
                                                    "column": 72
                                                  }
                                                },
                                                "value": "y",
                                                "rawValue": "y",
                                                "raw": "'y'"
                                              }
                                            ]
                                          }
                                        }
                                      ]
                                    }
                                  ]
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "FunctionDeclaration",
                      "start": 29104,
                      "end": 29572,
                      "loc": {
                        "start": {
                          "line": 701,
                          "column": 8
                        },
                        "end": {
                          "line": 708,
                          "column": 9
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 29113,
                        "end": 29124,
                        "loc": {
                          "start": {
                            "line": 701,
                            "column": 17
                          },
                          "end": {
                            "line": 701,
                            "column": 28
                          }
                        },
                        "name": "getLineDiff"
                      },
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 29126,
                          "end": 29132,
                          "loc": {
                            "start": {
                              "line": 701,
                              "column": 30
                            },
                            "end": {
                              "line": 701,
                              "column": 36
                            }
                          },
                          "name": "object"
                        },
                        {
                          "type": "Identifier",
                          "start": 29134,
                          "end": 29140,
                          "loc": {
                            "start": {
                              "line": 701,
                              "column": 38
                            },
                            "end": {
                              "line": 701,
                              "column": 44
                            }
                          },
                          "name": "states"
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "start": 29142,
                        "end": 29572,
                        "loc": {
                          "start": {
                            "line": 701,
                            "column": 46
                          },
                          "end": {
                            "line": 708,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 29156,
                            "end": 29185,
                            "loc": {
                              "start": {
                                "line": 702,
                                "column": 12
                              },
                              "end": {
                                "line": 702,
                                "column": 41
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 29160,
                                "end": 29184,
                                "loc": {
                                  "start": {
                                    "line": 702,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 702,
                                    "column": 40
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 29160,
                                  "end": 29172,
                                  "loc": {
                                    "start": {
                                      "line": 702,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 702,
                                      "column": 28
                                    }
                                  },
                                  "name": "subStateDiff"
                                },
                                "init": {
                                  "type": "NewExpression",
                                  "start": 29175,
                                  "end": 29184,
                                  "loc": {
                                    "start": {
                                      "line": 702,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 702,
                                      "column": 40
                                    }
                                  },
                                  "callee": {
                                    "type": "Identifier",
                                    "start": 29179,
                                    "end": 29182,
                                    "loc": {
                                      "start": {
                                        "line": 702,
                                        "column": 35
                                      },
                                      "end": {
                                        "line": 702,
                                        "column": 38
                                      }
                                    },
                                    "name": "Map"
                                  },
                                  "arguments": []
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "IfStatement",
                            "start": 29198,
                            "end": 29353,
                            "loc": {
                              "start": {
                                "line": 703,
                                "column": 12
                              },
                              "end": {
                                "line": 704,
                                "column": 122
                              }
                            },
                            "test": {
                              "type": "CallExpression",
                              "start": 29202,
                              "end": 29229,
                              "loc": {
                                "start": {
                                  "line": 703,
                                  "column": 16
                                },
                                "end": {
                                  "line": 703,
                                  "column": 43
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 29202,
                                "end": 29215,
                                "loc": {
                                  "start": {
                                    "line": 703,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 703,
                                    "column": 29
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 29202,
                                  "end": 29211,
                                  "loc": {
                                    "start": {
                                      "line": 703,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 703,
                                      "column": 25
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 29202,
                                    "end": 29208,
                                    "loc": {
                                      "start": {
                                        "line": 703,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 703,
                                        "column": 22
                                      }
                                    },
                                    "name": "states"
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 29209,
                                    "end": 29210,
                                    "loc": {
                                      "start": {
                                        "line": 703,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 703,
                                        "column": 24
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 29212,
                                  "end": 29215,
                                  "loc": {
                                    "start": {
                                      "line": 703,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 703,
                                      "column": 29
                                    }
                                  },
                                  "name": "has"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 29216,
                                  "end": 29228,
                                  "loc": {
                                    "start": {
                                      "line": 703,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 703,
                                      "column": 42
                                    }
                                  },
                                  "value": "startPoint",
                                  "rawValue": "startPoint",
                                  "raw": "'startPoint'"
                                }
                              ]
                            },
                            "consequent": {
                              "type": "ExpressionStatement",
                              "start": 29247,
                              "end": 29353,
                              "loc": {
                                "start": {
                                  "line": 704,
                                  "column": 16
                                },
                                "end": {
                                  "line": 704,
                                  "column": 122
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 29247,
                                "end": 29352,
                                "loc": {
                                  "start": {
                                    "line": 704,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 704,
                                    "column": 121
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 29247,
                                  "end": 29263,
                                  "loc": {
                                    "start": {
                                      "line": 704,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 704,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 29247,
                                    "end": 29259,
                                    "loc": {
                                      "start": {
                                        "line": 704,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 704,
                                        "column": 28
                                      }
                                    },
                                    "name": "subStateDiff"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 29260,
                                    "end": 29263,
                                    "loc": {
                                      "start": {
                                        "line": 704,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 704,
                                        "column": 32
                                      }
                                    },
                                    "name": "set"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Literal",
                                    "start": 29264,
                                    "end": 29276,
                                    "loc": {
                                      "start": {
                                        "line": 704,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 704,
                                        "column": 45
                                      }
                                    },
                                    "value": "startPoint",
                                    "rawValue": "startPoint",
                                    "raw": "'startPoint'"
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 29278,
                                    "end": 29351,
                                    "loc": {
                                      "start": {
                                        "line": 704,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 704,
                                        "column": 120
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 29278,
                                      "end": 29290,
                                      "loc": {
                                        "start": {
                                          "line": 704,
                                          "column": 47
                                        },
                                        "end": {
                                          "line": 704,
                                          "column": 59
                                        }
                                      },
                                      "name": "getPointDiff"
                                    },
                                    "arguments": [
                                      {
                                        "type": "ArrayExpression",
                                        "start": 29292,
                                        "end": 29350,
                                        "loc": {
                                          "start": {
                                            "line": 704,
                                            "column": 61
                                          },
                                          "end": {
                                            "line": 704,
                                            "column": 119
                                          }
                                        },
                                        "elements": [
                                          {
                                            "type": "CallExpression",
                                            "start": 29293,
                                            "end": 29320,
                                            "loc": {
                                              "start": {
                                                "line": 704,
                                                "column": 62
                                              },
                                              "end": {
                                                "line": 704,
                                                "column": 89
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 29293,
                                              "end": 29306,
                                              "loc": {
                                                "start": {
                                                  "line": 704,
                                                  "column": 62
                                                },
                                                "end": {
                                                  "line": 704,
                                                  "column": 75
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 29293,
                                                "end": 29302,
                                                "loc": {
                                                  "start": {
                                                    "line": 704,
                                                    "column": 62
                                                  },
                                                  "end": {
                                                    "line": 704,
                                                    "column": 71
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 29293,
                                                  "end": 29299,
                                                  "loc": {
                                                    "start": {
                                                      "line": 704,
                                                      "column": 62
                                                    },
                                                    "end": {
                                                      "line": 704,
                                                      "column": 68
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 29300,
                                                  "end": 29301,
                                                  "loc": {
                                                    "start": {
                                                      "line": 704,
                                                      "column": 69
                                                    },
                                                    "end": {
                                                      "line": 704,
                                                      "column": 70
                                                    }
                                                  },
                                                  "value": 0,
                                                  "rawValue": 0,
                                                  "raw": "0"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 29303,
                                                "end": 29306,
                                                "loc": {
                                                  "start": {
                                                    "line": 704,
                                                    "column": 72
                                                  },
                                                  "end": {
                                                    "line": 704,
                                                    "column": 75
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 29307,
                                                "end": 29319,
                                                "loc": {
                                                  "start": {
                                                    "line": 704,
                                                    "column": 76
                                                  },
                                                  "end": {
                                                    "line": 704,
                                                    "column": 88
                                                  }
                                                },
                                                "value": "startPoint",
                                                "rawValue": "startPoint",
                                                "raw": "'startPoint'"
                                              }
                                            ]
                                          },
                                          {
                                            "type": "CallExpression",
                                            "start": 29322,
                                            "end": 29349,
                                            "loc": {
                                              "start": {
                                                "line": 704,
                                                "column": 91
                                              },
                                              "end": {
                                                "line": 704,
                                                "column": 118
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 29322,
                                              "end": 29335,
                                              "loc": {
                                                "start": {
                                                  "line": 704,
                                                  "column": 91
                                                },
                                                "end": {
                                                  "line": 704,
                                                  "column": 104
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 29322,
                                                "end": 29331,
                                                "loc": {
                                                  "start": {
                                                    "line": 704,
                                                    "column": 91
                                                  },
                                                  "end": {
                                                    "line": 704,
                                                    "column": 100
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 29322,
                                                  "end": 29328,
                                                  "loc": {
                                                    "start": {
                                                      "line": 704,
                                                      "column": 91
                                                    },
                                                    "end": {
                                                      "line": 704,
                                                      "column": 97
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 29329,
                                                  "end": 29330,
                                                  "loc": {
                                                    "start": {
                                                      "line": 704,
                                                      "column": 98
                                                    },
                                                    "end": {
                                                      "line": 704,
                                                      "column": 99
                                                    }
                                                  },
                                                  "value": 1,
                                                  "rawValue": 1,
                                                  "raw": "1"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 29332,
                                                "end": 29335,
                                                "loc": {
                                                  "start": {
                                                    "line": 704,
                                                    "column": 101
                                                  },
                                                  "end": {
                                                    "line": 704,
                                                    "column": 104
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 29336,
                                                "end": 29348,
                                                "loc": {
                                                  "start": {
                                                    "line": 704,
                                                    "column": 105
                                                  },
                                                  "end": {
                                                    "line": 704,
                                                    "column": 117
                                                  }
                                                },
                                                "value": "startPoint",
                                                "rawValue": "startPoint",
                                                "raw": "'startPoint'"
                                              }
                                            ]
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                ]
                              }
                            },
                            "alternate": null
                          },
                          {
                            "type": "IfStatement",
                            "start": 29366,
                            "end": 29513,
                            "loc": {
                              "start": {
                                "line": 705,
                                "column": 12
                              },
                              "end": {
                                "line": 706,
                                "column": 116
                              }
                            },
                            "test": {
                              "type": "CallExpression",
                              "start": 29370,
                              "end": 29395,
                              "loc": {
                                "start": {
                                  "line": 705,
                                  "column": 16
                                },
                                "end": {
                                  "line": 705,
                                  "column": 41
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 29370,
                                "end": 29383,
                                "loc": {
                                  "start": {
                                    "line": 705,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 705,
                                    "column": 29
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 29370,
                                  "end": 29379,
                                  "loc": {
                                    "start": {
                                      "line": 705,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 705,
                                      "column": 25
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 29370,
                                    "end": 29376,
                                    "loc": {
                                      "start": {
                                        "line": 705,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 705,
                                        "column": 22
                                      }
                                    },
                                    "name": "states"
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 29377,
                                    "end": 29378,
                                    "loc": {
                                      "start": {
                                        "line": 705,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 705,
                                        "column": 24
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 29380,
                                  "end": 29383,
                                  "loc": {
                                    "start": {
                                      "line": 705,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 705,
                                      "column": 29
                                    }
                                  },
                                  "name": "has"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 29384,
                                  "end": 29394,
                                  "loc": {
                                    "start": {
                                      "line": 705,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 705,
                                      "column": 40
                                    }
                                  },
                                  "value": "endPoint",
                                  "rawValue": "endPoint",
                                  "raw": "'endPoint'"
                                }
                              ]
                            },
                            "consequent": {
                              "type": "ExpressionStatement",
                              "start": 29413,
                              "end": 29513,
                              "loc": {
                                "start": {
                                  "line": 706,
                                  "column": 16
                                },
                                "end": {
                                  "line": 706,
                                  "column": 116
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 29413,
                                "end": 29512,
                                "loc": {
                                  "start": {
                                    "line": 706,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 706,
                                    "column": 115
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 29413,
                                  "end": 29429,
                                  "loc": {
                                    "start": {
                                      "line": 706,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 706,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 29413,
                                    "end": 29425,
                                    "loc": {
                                      "start": {
                                        "line": 706,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 706,
                                        "column": 28
                                      }
                                    },
                                    "name": "subStateDiff"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 29426,
                                    "end": 29429,
                                    "loc": {
                                      "start": {
                                        "line": 706,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 706,
                                        "column": 32
                                      }
                                    },
                                    "name": "set"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Literal",
                                    "start": 29430,
                                    "end": 29440,
                                    "loc": {
                                      "start": {
                                        "line": 706,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 706,
                                        "column": 43
                                      }
                                    },
                                    "value": "endPoint",
                                    "rawValue": "endPoint",
                                    "raw": "'endPoint'"
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 29442,
                                    "end": 29511,
                                    "loc": {
                                      "start": {
                                        "line": 706,
                                        "column": 45
                                      },
                                      "end": {
                                        "line": 706,
                                        "column": 114
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 29442,
                                      "end": 29454,
                                      "loc": {
                                        "start": {
                                          "line": 706,
                                          "column": 45
                                        },
                                        "end": {
                                          "line": 706,
                                          "column": 57
                                        }
                                      },
                                      "name": "getPointDiff"
                                    },
                                    "arguments": [
                                      {
                                        "type": "ArrayExpression",
                                        "start": 29456,
                                        "end": 29510,
                                        "loc": {
                                          "start": {
                                            "line": 706,
                                            "column": 59
                                          },
                                          "end": {
                                            "line": 706,
                                            "column": 113
                                          }
                                        },
                                        "elements": [
                                          {
                                            "type": "CallExpression",
                                            "start": 29457,
                                            "end": 29482,
                                            "loc": {
                                              "start": {
                                                "line": 706,
                                                "column": 60
                                              },
                                              "end": {
                                                "line": 706,
                                                "column": 85
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 29457,
                                              "end": 29470,
                                              "loc": {
                                                "start": {
                                                  "line": 706,
                                                  "column": 60
                                                },
                                                "end": {
                                                  "line": 706,
                                                  "column": 73
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 29457,
                                                "end": 29466,
                                                "loc": {
                                                  "start": {
                                                    "line": 706,
                                                    "column": 60
                                                  },
                                                  "end": {
                                                    "line": 706,
                                                    "column": 69
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 29457,
                                                  "end": 29463,
                                                  "loc": {
                                                    "start": {
                                                      "line": 706,
                                                      "column": 60
                                                    },
                                                    "end": {
                                                      "line": 706,
                                                      "column": 66
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 29464,
                                                  "end": 29465,
                                                  "loc": {
                                                    "start": {
                                                      "line": 706,
                                                      "column": 67
                                                    },
                                                    "end": {
                                                      "line": 706,
                                                      "column": 68
                                                    }
                                                  },
                                                  "value": 0,
                                                  "rawValue": 0,
                                                  "raw": "0"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 29467,
                                                "end": 29470,
                                                "loc": {
                                                  "start": {
                                                    "line": 706,
                                                    "column": 70
                                                  },
                                                  "end": {
                                                    "line": 706,
                                                    "column": 73
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 29471,
                                                "end": 29481,
                                                "loc": {
                                                  "start": {
                                                    "line": 706,
                                                    "column": 74
                                                  },
                                                  "end": {
                                                    "line": 706,
                                                    "column": 84
                                                  }
                                                },
                                                "value": "endPoint",
                                                "rawValue": "endPoint",
                                                "raw": "'endPoint'"
                                              }
                                            ]
                                          },
                                          {
                                            "type": "CallExpression",
                                            "start": 29484,
                                            "end": 29509,
                                            "loc": {
                                              "start": {
                                                "line": 706,
                                                "column": 87
                                              },
                                              "end": {
                                                "line": 706,
                                                "column": 112
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 29484,
                                              "end": 29497,
                                              "loc": {
                                                "start": {
                                                  "line": 706,
                                                  "column": 87
                                                },
                                                "end": {
                                                  "line": 706,
                                                  "column": 100
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 29484,
                                                "end": 29493,
                                                "loc": {
                                                  "start": {
                                                    "line": 706,
                                                    "column": 87
                                                  },
                                                  "end": {
                                                    "line": 706,
                                                    "column": 96
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 29484,
                                                  "end": 29490,
                                                  "loc": {
                                                    "start": {
                                                      "line": 706,
                                                      "column": 87
                                                    },
                                                    "end": {
                                                      "line": 706,
                                                      "column": 93
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 29491,
                                                  "end": 29492,
                                                  "loc": {
                                                    "start": {
                                                      "line": 706,
                                                      "column": 94
                                                    },
                                                    "end": {
                                                      "line": 706,
                                                      "column": 95
                                                    }
                                                  },
                                                  "value": 1,
                                                  "rawValue": 1,
                                                  "raw": "1"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 29494,
                                                "end": 29497,
                                                "loc": {
                                                  "start": {
                                                    "line": 706,
                                                    "column": 97
                                                  },
                                                  "end": {
                                                    "line": 706,
                                                    "column": 100
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 29498,
                                                "end": 29508,
                                                "loc": {
                                                  "start": {
                                                    "line": 706,
                                                    "column": 101
                                                  },
                                                  "end": {
                                                    "line": 706,
                                                    "column": 111
                                                  }
                                                },
                                                "value": "endPoint",
                                                "rawValue": "endPoint",
                                                "raw": "'endPoint'"
                                              }
                                            ]
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                ]
                              }
                            },
                            "alternate": null
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 29526,
                            "end": 29562,
                            "loc": {
                              "start": {
                                "line": 707,
                                "column": 12
                              },
                              "end": {
                                "line": 707,
                                "column": 48
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 29526,
                              "end": 29561,
                              "loc": {
                                "start": {
                                  "line": 707,
                                  "column": 12
                                },
                                "end": {
                                  "line": 707,
                                  "column": 47
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 29526,
                                "end": 29539,
                                "loc": {
                                  "start": {
                                    "line": 707,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 707,
                                    "column": 25
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 29526,
                                  "end": 29535,
                                  "loc": {
                                    "start": {
                                      "line": 707,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 707,
                                      "column": 21
                                    }
                                  },
                                  "name": "stateDiff"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 29536,
                                  "end": 29539,
                                  "loc": {
                                    "start": {
                                      "line": 707,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 707,
                                      "column": 25
                                    }
                                  },
                                  "name": "set"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 29540,
                                  "end": 29546,
                                  "loc": {
                                    "start": {
                                      "line": 707,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 707,
                                      "column": 32
                                    }
                                  },
                                  "name": "object"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 29548,
                                  "end": 29560,
                                  "loc": {
                                    "start": {
                                      "line": 707,
                                      "column": 34
                                    },
                                    "end": {
                                      "line": 707,
                                      "column": 46
                                    }
                                  },
                                  "name": "subStateDiff"
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "FunctionDeclaration",
                      "start": 29582,
                      "end": 30321,
                      "loc": {
                        "start": {
                          "line": 710,
                          "column": 8
                        },
                        "end": {
                          "line": 722,
                          "column": 9
                        }
                      },
                      "id": {
                        "type": "Identifier",
                        "start": 29591,
                        "end": 29601,
                        "loc": {
                          "start": {
                            "line": 710,
                            "column": 17
                          },
                          "end": {
                            "line": 710,
                            "column": 27
                          }
                        },
                        "name": "getArcDiff"
                      },
                      "generator": false,
                      "expression": false,
                      "async": false,
                      "params": [
                        {
                          "type": "Identifier",
                          "start": 29603,
                          "end": 29609,
                          "loc": {
                            "start": {
                              "line": 710,
                              "column": 29
                            },
                            "end": {
                              "line": 710,
                              "column": 35
                            }
                          },
                          "name": "object"
                        },
                        {
                          "type": "Identifier",
                          "start": 29611,
                          "end": 29617,
                          "loc": {
                            "start": {
                              "line": 710,
                              "column": 37
                            },
                            "end": {
                              "line": 710,
                              "column": 43
                            }
                          },
                          "name": "states"
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "start": 29619,
                        "end": 30321,
                        "loc": {
                          "start": {
                            "line": 710,
                            "column": 45
                          },
                          "end": {
                            "line": 722,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 29634,
                            "end": 29663,
                            "loc": {
                              "start": {
                                "line": 712,
                                "column": 12
                              },
                              "end": {
                                "line": 712,
                                "column": 41
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 29638,
                                "end": 29662,
                                "loc": {
                                  "start": {
                                    "line": 712,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 712,
                                    "column": 40
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 29638,
                                  "end": 29650,
                                  "loc": {
                                    "start": {
                                      "line": 712,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 712,
                                      "column": 28
                                    }
                                  },
                                  "name": "subStateDiff"
                                },
                                "init": {
                                  "type": "NewExpression",
                                  "start": 29653,
                                  "end": 29662,
                                  "loc": {
                                    "start": {
                                      "line": 712,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 712,
                                      "column": 40
                                    }
                                  },
                                  "callee": {
                                    "type": "Identifier",
                                    "start": 29657,
                                    "end": 29660,
                                    "loc": {
                                      "start": {
                                        "line": 712,
                                        "column": 35
                                      },
                                      "end": {
                                        "line": 712,
                                        "column": 38
                                      }
                                    },
                                    "name": "Map"
                                  },
                                  "arguments": []
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "IfStatement",
                            "start": 29676,
                            "end": 29831,
                            "loc": {
                              "start": {
                                "line": 713,
                                "column": 12
                              },
                              "end": {
                                "line": 714,
                                "column": 122
                              }
                            },
                            "test": {
                              "type": "CallExpression",
                              "start": 29680,
                              "end": 29707,
                              "loc": {
                                "start": {
                                  "line": 713,
                                  "column": 16
                                },
                                "end": {
                                  "line": 713,
                                  "column": 43
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 29680,
                                "end": 29693,
                                "loc": {
                                  "start": {
                                    "line": 713,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 713,
                                    "column": 29
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 29680,
                                  "end": 29689,
                                  "loc": {
                                    "start": {
                                      "line": 713,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 713,
                                      "column": 25
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 29680,
                                    "end": 29686,
                                    "loc": {
                                      "start": {
                                        "line": 713,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 713,
                                        "column": 22
                                      }
                                    },
                                    "name": "states"
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 29687,
                                    "end": 29688,
                                    "loc": {
                                      "start": {
                                        "line": 713,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 713,
                                        "column": 24
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 29690,
                                  "end": 29693,
                                  "loc": {
                                    "start": {
                                      "line": 713,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 713,
                                      "column": 29
                                    }
                                  },
                                  "name": "has"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 29694,
                                  "end": 29706,
                                  "loc": {
                                    "start": {
                                      "line": 713,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 713,
                                      "column": 42
                                    }
                                  },
                                  "value": "startPoint",
                                  "rawValue": "startPoint",
                                  "raw": "'startPoint'"
                                }
                              ]
                            },
                            "consequent": {
                              "type": "ExpressionStatement",
                              "start": 29725,
                              "end": 29831,
                              "loc": {
                                "start": {
                                  "line": 714,
                                  "column": 16
                                },
                                "end": {
                                  "line": 714,
                                  "column": 122
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 29725,
                                "end": 29830,
                                "loc": {
                                  "start": {
                                    "line": 714,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 714,
                                    "column": 121
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 29725,
                                  "end": 29741,
                                  "loc": {
                                    "start": {
                                      "line": 714,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 714,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 29725,
                                    "end": 29737,
                                    "loc": {
                                      "start": {
                                        "line": 714,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 714,
                                        "column": 28
                                      }
                                    },
                                    "name": "subStateDiff"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 29738,
                                    "end": 29741,
                                    "loc": {
                                      "start": {
                                        "line": 714,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 714,
                                        "column": 32
                                      }
                                    },
                                    "name": "set"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Literal",
                                    "start": 29742,
                                    "end": 29754,
                                    "loc": {
                                      "start": {
                                        "line": 714,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 714,
                                        "column": 45
                                      }
                                    },
                                    "value": "startPoint",
                                    "rawValue": "startPoint",
                                    "raw": "'startPoint'"
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 29756,
                                    "end": 29829,
                                    "loc": {
                                      "start": {
                                        "line": 714,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 714,
                                        "column": 120
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 29756,
                                      "end": 29768,
                                      "loc": {
                                        "start": {
                                          "line": 714,
                                          "column": 47
                                        },
                                        "end": {
                                          "line": 714,
                                          "column": 59
                                        }
                                      },
                                      "name": "getPointDiff"
                                    },
                                    "arguments": [
                                      {
                                        "type": "ArrayExpression",
                                        "start": 29770,
                                        "end": 29828,
                                        "loc": {
                                          "start": {
                                            "line": 714,
                                            "column": 61
                                          },
                                          "end": {
                                            "line": 714,
                                            "column": 119
                                          }
                                        },
                                        "elements": [
                                          {
                                            "type": "CallExpression",
                                            "start": 29771,
                                            "end": 29798,
                                            "loc": {
                                              "start": {
                                                "line": 714,
                                                "column": 62
                                              },
                                              "end": {
                                                "line": 714,
                                                "column": 89
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 29771,
                                              "end": 29784,
                                              "loc": {
                                                "start": {
                                                  "line": 714,
                                                  "column": 62
                                                },
                                                "end": {
                                                  "line": 714,
                                                  "column": 75
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 29771,
                                                "end": 29780,
                                                "loc": {
                                                  "start": {
                                                    "line": 714,
                                                    "column": 62
                                                  },
                                                  "end": {
                                                    "line": 714,
                                                    "column": 71
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 29771,
                                                  "end": 29777,
                                                  "loc": {
                                                    "start": {
                                                      "line": 714,
                                                      "column": 62
                                                    },
                                                    "end": {
                                                      "line": 714,
                                                      "column": 68
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 29778,
                                                  "end": 29779,
                                                  "loc": {
                                                    "start": {
                                                      "line": 714,
                                                      "column": 69
                                                    },
                                                    "end": {
                                                      "line": 714,
                                                      "column": 70
                                                    }
                                                  },
                                                  "value": 0,
                                                  "rawValue": 0,
                                                  "raw": "0"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 29781,
                                                "end": 29784,
                                                "loc": {
                                                  "start": {
                                                    "line": 714,
                                                    "column": 72
                                                  },
                                                  "end": {
                                                    "line": 714,
                                                    "column": 75
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 29785,
                                                "end": 29797,
                                                "loc": {
                                                  "start": {
                                                    "line": 714,
                                                    "column": 76
                                                  },
                                                  "end": {
                                                    "line": 714,
                                                    "column": 88
                                                  }
                                                },
                                                "value": "startPoint",
                                                "rawValue": "startPoint",
                                                "raw": "'startPoint'"
                                              }
                                            ]
                                          },
                                          {
                                            "type": "CallExpression",
                                            "start": 29800,
                                            "end": 29827,
                                            "loc": {
                                              "start": {
                                                "line": 714,
                                                "column": 91
                                              },
                                              "end": {
                                                "line": 714,
                                                "column": 118
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 29800,
                                              "end": 29813,
                                              "loc": {
                                                "start": {
                                                  "line": 714,
                                                  "column": 91
                                                },
                                                "end": {
                                                  "line": 714,
                                                  "column": 104
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 29800,
                                                "end": 29809,
                                                "loc": {
                                                  "start": {
                                                    "line": 714,
                                                    "column": 91
                                                  },
                                                  "end": {
                                                    "line": 714,
                                                    "column": 100
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 29800,
                                                  "end": 29806,
                                                  "loc": {
                                                    "start": {
                                                      "line": 714,
                                                      "column": 91
                                                    },
                                                    "end": {
                                                      "line": 714,
                                                      "column": 97
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 29807,
                                                  "end": 29808,
                                                  "loc": {
                                                    "start": {
                                                      "line": 714,
                                                      "column": 98
                                                    },
                                                    "end": {
                                                      "line": 714,
                                                      "column": 99
                                                    }
                                                  },
                                                  "value": 1,
                                                  "rawValue": 1,
                                                  "raw": "1"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 29810,
                                                "end": 29813,
                                                "loc": {
                                                  "start": {
                                                    "line": 714,
                                                    "column": 101
                                                  },
                                                  "end": {
                                                    "line": 714,
                                                    "column": 104
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 29814,
                                                "end": 29826,
                                                "loc": {
                                                  "start": {
                                                    "line": 714,
                                                    "column": 105
                                                  },
                                                  "end": {
                                                    "line": 714,
                                                    "column": 117
                                                  }
                                                },
                                                "value": "startPoint",
                                                "rawValue": "startPoint",
                                                "raw": "'startPoint'"
                                              }
                                            ]
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                ]
                              }
                            },
                            "alternate": null
                          },
                          {
                            "type": "IfStatement",
                            "start": 29844,
                            "end": 29991,
                            "loc": {
                              "start": {
                                "line": 715,
                                "column": 12
                              },
                              "end": {
                                "line": 716,
                                "column": 116
                              }
                            },
                            "test": {
                              "type": "CallExpression",
                              "start": 29848,
                              "end": 29873,
                              "loc": {
                                "start": {
                                  "line": 715,
                                  "column": 16
                                },
                                "end": {
                                  "line": 715,
                                  "column": 41
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 29848,
                                "end": 29861,
                                "loc": {
                                  "start": {
                                    "line": 715,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 715,
                                    "column": 29
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 29848,
                                  "end": 29857,
                                  "loc": {
                                    "start": {
                                      "line": 715,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 715,
                                      "column": 25
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 29848,
                                    "end": 29854,
                                    "loc": {
                                      "start": {
                                        "line": 715,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 715,
                                        "column": 22
                                      }
                                    },
                                    "name": "states"
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 29855,
                                    "end": 29856,
                                    "loc": {
                                      "start": {
                                        "line": 715,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 715,
                                        "column": 24
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 29858,
                                  "end": 29861,
                                  "loc": {
                                    "start": {
                                      "line": 715,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 715,
                                      "column": 29
                                    }
                                  },
                                  "name": "has"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 29862,
                                  "end": 29872,
                                  "loc": {
                                    "start": {
                                      "line": 715,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 715,
                                      "column": 40
                                    }
                                  },
                                  "value": "endPoint",
                                  "rawValue": "endPoint",
                                  "raw": "'endPoint'"
                                }
                              ]
                            },
                            "consequent": {
                              "type": "ExpressionStatement",
                              "start": 29891,
                              "end": 29991,
                              "loc": {
                                "start": {
                                  "line": 716,
                                  "column": 16
                                },
                                "end": {
                                  "line": 716,
                                  "column": 116
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 29891,
                                "end": 29990,
                                "loc": {
                                  "start": {
                                    "line": 716,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 716,
                                    "column": 115
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 29891,
                                  "end": 29907,
                                  "loc": {
                                    "start": {
                                      "line": 716,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 716,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 29891,
                                    "end": 29903,
                                    "loc": {
                                      "start": {
                                        "line": 716,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 716,
                                        "column": 28
                                      }
                                    },
                                    "name": "subStateDiff"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 29904,
                                    "end": 29907,
                                    "loc": {
                                      "start": {
                                        "line": 716,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 716,
                                        "column": 32
                                      }
                                    },
                                    "name": "set"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Literal",
                                    "start": 29908,
                                    "end": 29918,
                                    "loc": {
                                      "start": {
                                        "line": 716,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 716,
                                        "column": 43
                                      }
                                    },
                                    "value": "endPoint",
                                    "rawValue": "endPoint",
                                    "raw": "'endPoint'"
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 29920,
                                    "end": 29989,
                                    "loc": {
                                      "start": {
                                        "line": 716,
                                        "column": 45
                                      },
                                      "end": {
                                        "line": 716,
                                        "column": 114
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 29920,
                                      "end": 29932,
                                      "loc": {
                                        "start": {
                                          "line": 716,
                                          "column": 45
                                        },
                                        "end": {
                                          "line": 716,
                                          "column": 57
                                        }
                                      },
                                      "name": "getPointDiff"
                                    },
                                    "arguments": [
                                      {
                                        "type": "ArrayExpression",
                                        "start": 29934,
                                        "end": 29988,
                                        "loc": {
                                          "start": {
                                            "line": 716,
                                            "column": 59
                                          },
                                          "end": {
                                            "line": 716,
                                            "column": 113
                                          }
                                        },
                                        "elements": [
                                          {
                                            "type": "CallExpression",
                                            "start": 29935,
                                            "end": 29960,
                                            "loc": {
                                              "start": {
                                                "line": 716,
                                                "column": 60
                                              },
                                              "end": {
                                                "line": 716,
                                                "column": 85
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 29935,
                                              "end": 29948,
                                              "loc": {
                                                "start": {
                                                  "line": 716,
                                                  "column": 60
                                                },
                                                "end": {
                                                  "line": 716,
                                                  "column": 73
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 29935,
                                                "end": 29944,
                                                "loc": {
                                                  "start": {
                                                    "line": 716,
                                                    "column": 60
                                                  },
                                                  "end": {
                                                    "line": 716,
                                                    "column": 69
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 29935,
                                                  "end": 29941,
                                                  "loc": {
                                                    "start": {
                                                      "line": 716,
                                                      "column": 60
                                                    },
                                                    "end": {
                                                      "line": 716,
                                                      "column": 66
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 29942,
                                                  "end": 29943,
                                                  "loc": {
                                                    "start": {
                                                      "line": 716,
                                                      "column": 67
                                                    },
                                                    "end": {
                                                      "line": 716,
                                                      "column": 68
                                                    }
                                                  },
                                                  "value": 0,
                                                  "rawValue": 0,
                                                  "raw": "0"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 29945,
                                                "end": 29948,
                                                "loc": {
                                                  "start": {
                                                    "line": 716,
                                                    "column": 70
                                                  },
                                                  "end": {
                                                    "line": 716,
                                                    "column": 73
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 29949,
                                                "end": 29959,
                                                "loc": {
                                                  "start": {
                                                    "line": 716,
                                                    "column": 74
                                                  },
                                                  "end": {
                                                    "line": 716,
                                                    "column": 84
                                                  }
                                                },
                                                "value": "endPoint",
                                                "rawValue": "endPoint",
                                                "raw": "'endPoint'"
                                              }
                                            ]
                                          },
                                          {
                                            "type": "CallExpression",
                                            "start": 29962,
                                            "end": 29987,
                                            "loc": {
                                              "start": {
                                                "line": 716,
                                                "column": 87
                                              },
                                              "end": {
                                                "line": 716,
                                                "column": 112
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 29962,
                                              "end": 29975,
                                              "loc": {
                                                "start": {
                                                  "line": 716,
                                                  "column": 87
                                                },
                                                "end": {
                                                  "line": 716,
                                                  "column": 100
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 29962,
                                                "end": 29971,
                                                "loc": {
                                                  "start": {
                                                    "line": 716,
                                                    "column": 87
                                                  },
                                                  "end": {
                                                    "line": 716,
                                                    "column": 96
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 29962,
                                                  "end": 29968,
                                                  "loc": {
                                                    "start": {
                                                      "line": 716,
                                                      "column": 87
                                                    },
                                                    "end": {
                                                      "line": 716,
                                                      "column": 93
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 29969,
                                                  "end": 29970,
                                                  "loc": {
                                                    "start": {
                                                      "line": 716,
                                                      "column": 94
                                                    },
                                                    "end": {
                                                      "line": 716,
                                                      "column": 95
                                                    }
                                                  },
                                                  "value": 1,
                                                  "rawValue": 1,
                                                  "raw": "1"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 29972,
                                                "end": 29975,
                                                "loc": {
                                                  "start": {
                                                    "line": 716,
                                                    "column": 97
                                                  },
                                                  "end": {
                                                    "line": 716,
                                                    "column": 100
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 29976,
                                                "end": 29986,
                                                "loc": {
                                                  "start": {
                                                    "line": 716,
                                                    "column": 101
                                                  },
                                                  "end": {
                                                    "line": 716,
                                                    "column": 111
                                                  }
                                                },
                                                "value": "endPoint",
                                                "rawValue": "endPoint",
                                                "raw": "'endPoint'"
                                              }
                                            ]
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                ]
                              }
                            },
                            "alternate": null
                          },
                          {
                            "type": "IfStatement",
                            "start": 30004,
                            "end": 30143,
                            "loc": {
                              "start": {
                                "line": 717,
                                "column": 12
                              },
                              "end": {
                                "line": 718,
                                "column": 110
                              }
                            },
                            "test": {
                              "type": "CallExpression",
                              "start": 30008,
                              "end": 30031,
                              "loc": {
                                "start": {
                                  "line": 717,
                                  "column": 16
                                },
                                "end": {
                                  "line": 717,
                                  "column": 39
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 30008,
                                "end": 30021,
                                "loc": {
                                  "start": {
                                    "line": 717,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 717,
                                    "column": 29
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 30008,
                                  "end": 30017,
                                  "loc": {
                                    "start": {
                                      "line": 717,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 717,
                                      "column": 25
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 30008,
                                    "end": 30014,
                                    "loc": {
                                      "start": {
                                        "line": 717,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 717,
                                        "column": 22
                                      }
                                    },
                                    "name": "states"
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 30015,
                                    "end": 30016,
                                    "loc": {
                                      "start": {
                                        "line": 717,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 717,
                                        "column": 24
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 30018,
                                  "end": 30021,
                                  "loc": {
                                    "start": {
                                      "line": 717,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 717,
                                      "column": 29
                                    }
                                  },
                                  "name": "has"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 30022,
                                  "end": 30030,
                                  "loc": {
                                    "start": {
                                      "line": 717,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 717,
                                      "column": 38
                                    }
                                  },
                                  "value": "center",
                                  "rawValue": "center",
                                  "raw": "'center'"
                                }
                              ]
                            },
                            "consequent": {
                              "type": "ExpressionStatement",
                              "start": 30049,
                              "end": 30143,
                              "loc": {
                                "start": {
                                  "line": 718,
                                  "column": 16
                                },
                                "end": {
                                  "line": 718,
                                  "column": 110
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 30049,
                                "end": 30142,
                                "loc": {
                                  "start": {
                                    "line": 718,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 718,
                                    "column": 109
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 30049,
                                  "end": 30065,
                                  "loc": {
                                    "start": {
                                      "line": 718,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 718,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 30049,
                                    "end": 30061,
                                    "loc": {
                                      "start": {
                                        "line": 718,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 718,
                                        "column": 28
                                      }
                                    },
                                    "name": "subStateDiff"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 30062,
                                    "end": 30065,
                                    "loc": {
                                      "start": {
                                        "line": 718,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 718,
                                        "column": 32
                                      }
                                    },
                                    "name": "set"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Literal",
                                    "start": 30066,
                                    "end": 30074,
                                    "loc": {
                                      "start": {
                                        "line": 718,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 718,
                                        "column": 41
                                      }
                                    },
                                    "value": "center",
                                    "rawValue": "center",
                                    "raw": "'center'"
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 30076,
                                    "end": 30141,
                                    "loc": {
                                      "start": {
                                        "line": 718,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 718,
                                        "column": 108
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 30076,
                                      "end": 30088,
                                      "loc": {
                                        "start": {
                                          "line": 718,
                                          "column": 43
                                        },
                                        "end": {
                                          "line": 718,
                                          "column": 55
                                        }
                                      },
                                      "name": "getPointDiff"
                                    },
                                    "arguments": [
                                      {
                                        "type": "ArrayExpression",
                                        "start": 30090,
                                        "end": 30140,
                                        "loc": {
                                          "start": {
                                            "line": 718,
                                            "column": 57
                                          },
                                          "end": {
                                            "line": 718,
                                            "column": 107
                                          }
                                        },
                                        "elements": [
                                          {
                                            "type": "CallExpression",
                                            "start": 30091,
                                            "end": 30114,
                                            "loc": {
                                              "start": {
                                                "line": 718,
                                                "column": 58
                                              },
                                              "end": {
                                                "line": 718,
                                                "column": 81
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 30091,
                                              "end": 30104,
                                              "loc": {
                                                "start": {
                                                  "line": 718,
                                                  "column": 58
                                                },
                                                "end": {
                                                  "line": 718,
                                                  "column": 71
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 30091,
                                                "end": 30100,
                                                "loc": {
                                                  "start": {
                                                    "line": 718,
                                                    "column": 58
                                                  },
                                                  "end": {
                                                    "line": 718,
                                                    "column": 67
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 30091,
                                                  "end": 30097,
                                                  "loc": {
                                                    "start": {
                                                      "line": 718,
                                                      "column": 58
                                                    },
                                                    "end": {
                                                      "line": 718,
                                                      "column": 64
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 30098,
                                                  "end": 30099,
                                                  "loc": {
                                                    "start": {
                                                      "line": 718,
                                                      "column": 65
                                                    },
                                                    "end": {
                                                      "line": 718,
                                                      "column": 66
                                                    }
                                                  },
                                                  "value": 0,
                                                  "rawValue": 0,
                                                  "raw": "0"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 30101,
                                                "end": 30104,
                                                "loc": {
                                                  "start": {
                                                    "line": 718,
                                                    "column": 68
                                                  },
                                                  "end": {
                                                    "line": 718,
                                                    "column": 71
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 30105,
                                                "end": 30113,
                                                "loc": {
                                                  "start": {
                                                    "line": 718,
                                                    "column": 72
                                                  },
                                                  "end": {
                                                    "line": 718,
                                                    "column": 80
                                                  }
                                                },
                                                "value": "center",
                                                "rawValue": "center",
                                                "raw": "'center'"
                                              }
                                            ]
                                          },
                                          {
                                            "type": "CallExpression",
                                            "start": 30116,
                                            "end": 30139,
                                            "loc": {
                                              "start": {
                                                "line": 718,
                                                "column": 83
                                              },
                                              "end": {
                                                "line": 718,
                                                "column": 106
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 30116,
                                              "end": 30129,
                                              "loc": {
                                                "start": {
                                                  "line": 718,
                                                  "column": 83
                                                },
                                                "end": {
                                                  "line": 718,
                                                  "column": 96
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 30116,
                                                "end": 30125,
                                                "loc": {
                                                  "start": {
                                                    "line": 718,
                                                    "column": 83
                                                  },
                                                  "end": {
                                                    "line": 718,
                                                    "column": 92
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 30116,
                                                  "end": 30122,
                                                  "loc": {
                                                    "start": {
                                                      "line": 718,
                                                      "column": 83
                                                    },
                                                    "end": {
                                                      "line": 718,
                                                      "column": 89
                                                    }
                                                  },
                                                  "name": "states"
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 30123,
                                                  "end": 30124,
                                                  "loc": {
                                                    "start": {
                                                      "line": 718,
                                                      "column": 90
                                                    },
                                                    "end": {
                                                      "line": 718,
                                                      "column": 91
                                                    }
                                                  },
                                                  "value": 1,
                                                  "rawValue": 1,
                                                  "raw": "1"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 30126,
                                                "end": 30129,
                                                "loc": {
                                                  "start": {
                                                    "line": 718,
                                                    "column": 93
                                                  },
                                                  "end": {
                                                    "line": 718,
                                                    "column": 96
                                                  }
                                                },
                                                "name": "get"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 30130,
                                                "end": 30138,
                                                "loc": {
                                                  "start": {
                                                    "line": 718,
                                                    "column": 97
                                                  },
                                                  "end": {
                                                    "line": 718,
                                                    "column": 105
                                                  }
                                                },
                                                "value": "center",
                                                "rawValue": "center",
                                                "raw": "'center'"
                                              }
                                            ]
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                ]
                              }
                            },
                            "alternate": null
                          },
                          {
                            "type": "IfStatement",
                            "start": 30156,
                            "end": 30262,
                            "loc": {
                              "start": {
                                "line": 719,
                                "column": 12
                              },
                              "end": {
                                "line": 720,
                                "column": 74
                              }
                            },
                            "test": {
                              "type": "CallExpression",
                              "start": 30160,
                              "end": 30186,
                              "loc": {
                                "start": {
                                  "line": 719,
                                  "column": 16
                                },
                                "end": {
                                  "line": 719,
                                  "column": 42
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 30160,
                                "end": 30173,
                                "loc": {
                                  "start": {
                                    "line": 719,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 719,
                                    "column": 29
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 30160,
                                  "end": 30169,
                                  "loc": {
                                    "start": {
                                      "line": 719,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 719,
                                      "column": 25
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 30160,
                                    "end": 30166,
                                    "loc": {
                                      "start": {
                                        "line": 719,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 719,
                                        "column": 22
                                      }
                                    },
                                    "name": "states"
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 30167,
                                    "end": 30168,
                                    "loc": {
                                      "start": {
                                        "line": 719,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 719,
                                        "column": 24
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 30170,
                                  "end": 30173,
                                  "loc": {
                                    "start": {
                                      "line": 719,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 719,
                                      "column": 29
                                    }
                                  },
                                  "name": "has"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 30174,
                                  "end": 30185,
                                  "loc": {
                                    "start": {
                                      "line": 719,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 719,
                                      "column": 41
                                    }
                                  },
                                  "value": "clockwise",
                                  "rawValue": "clockwise",
                                  "raw": "'clockwise'"
                                }
                              ]
                            },
                            "consequent": {
                              "type": "ExpressionStatement",
                              "start": 30204,
                              "end": 30262,
                              "loc": {
                                "start": {
                                  "line": 720,
                                  "column": 16
                                },
                                "end": {
                                  "line": 720,
                                  "column": 74
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 30204,
                                "end": 30261,
                                "loc": {
                                  "start": {
                                    "line": 720,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 720,
                                    "column": 73
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 30204,
                                  "end": 30220,
                                  "loc": {
                                    "start": {
                                      "line": 720,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 720,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 30204,
                                    "end": 30216,
                                    "loc": {
                                      "start": {
                                        "line": 720,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 720,
                                        "column": 28
                                      }
                                    },
                                    "name": "subStateDiff"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 30217,
                                    "end": 30220,
                                    "loc": {
                                      "start": {
                                        "line": 720,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 720,
                                        "column": 32
                                      }
                                    },
                                    "name": "set"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Literal",
                                    "start": 30221,
                                    "end": 30232,
                                    "loc": {
                                      "start": {
                                        "line": 720,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 720,
                                        "column": 44
                                      }
                                    },
                                    "value": "clockwise",
                                    "rawValue": "clockwise",
                                    "raw": "'clockwise'"
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 30234,
                                    "end": 30260,
                                    "loc": {
                                      "start": {
                                        "line": 720,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 720,
                                        "column": 72
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 30234,
                                      "end": 30247,
                                      "loc": {
                                        "start": {
                                          "line": 720,
                                          "column": 46
                                        },
                                        "end": {
                                          "line": 720,
                                          "column": 59
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 30234,
                                        "end": 30243,
                                        "loc": {
                                          "start": {
                                            "line": 720,
                                            "column": 46
                                          },
                                          "end": {
                                            "line": 720,
                                            "column": 55
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 30234,
                                          "end": 30240,
                                          "loc": {
                                            "start": {
                                              "line": 720,
                                              "column": 46
                                            },
                                            "end": {
                                              "line": 720,
                                              "column": 52
                                            }
                                          },
                                          "name": "states"
                                        },
                                        "property": {
                                          "type": "Literal",
                                          "start": 30241,
                                          "end": 30242,
                                          "loc": {
                                            "start": {
                                              "line": 720,
                                              "column": 53
                                            },
                                            "end": {
                                              "line": 720,
                                              "column": 54
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        "computed": true
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 30244,
                                        "end": 30247,
                                        "loc": {
                                          "start": {
                                            "line": 720,
                                            "column": 56
                                          },
                                          "end": {
                                            "line": 720,
                                            "column": 59
                                          }
                                        },
                                        "name": "get"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Literal",
                                        "start": 30248,
                                        "end": 30259,
                                        "loc": {
                                          "start": {
                                            "line": 720,
                                            "column": 60
                                          },
                                          "end": {
                                            "line": 720,
                                            "column": 71
                                          }
                                        },
                                        "value": "clockwise",
                                        "rawValue": "clockwise",
                                        "raw": "'clockwise'"
                                      }
                                    ]
                                  }
                                ]
                              }
                            },
                            "alternate": null
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 30275,
                            "end": 30311,
                            "loc": {
                              "start": {
                                "line": 721,
                                "column": 12
                              },
                              "end": {
                                "line": 721,
                                "column": 48
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 30275,
                              "end": 30310,
                              "loc": {
                                "start": {
                                  "line": 721,
                                  "column": 12
                                },
                                "end": {
                                  "line": 721,
                                  "column": 47
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 30275,
                                "end": 30288,
                                "loc": {
                                  "start": {
                                    "line": 721,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 721,
                                    "column": 25
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 30275,
                                  "end": 30284,
                                  "loc": {
                                    "start": {
                                      "line": 721,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 721,
                                      "column": 21
                                    }
                                  },
                                  "name": "stateDiff"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 30285,
                                  "end": 30288,
                                  "loc": {
                                    "start": {
                                      "line": 721,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 721,
                                      "column": 25
                                    }
                                  },
                                  "name": "set"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 30289,
                                  "end": 30295,
                                  "loc": {
                                    "start": {
                                      "line": 721,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 721,
                                      "column": 32
                                    }
                                  },
                                  "name": "object"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 30297,
                                  "end": 30309,
                                  "loc": {
                                    "start": {
                                      "line": 721,
                                      "column": 34
                                    },
                                    "end": {
                                      "line": 721,
                                      "column": 46
                                    }
                                  },
                                  "name": "subStateDiff"
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 30331,
                      "end": 30860,
                      "loc": {
                        "start": {
                          "line": 724,
                          "column": 8
                        },
                        "end": {
                          "line": 735,
                          "column": 17
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 30331,
                        "end": 30859,
                        "loc": {
                          "start": {
                            "line": 724,
                            "column": 8
                          },
                          "end": {
                            "line": 735,
                            "column": 16
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 30331,
                          "end": 30348,
                          "loc": {
                            "start": {
                              "line": 724,
                              "column": 8
                            },
                            "end": {
                              "line": 724,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 30331,
                            "end": 30340,
                            "loc": {
                              "start": {
                                "line": 724,
                                "column": 8
                              },
                              "end": {
                                "line": 724,
                                "column": 17
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 30331,
                              "end": 30337,
                              "loc": {
                                "start": {
                                  "line": 724,
                                  "column": 8
                                },
                                "end": {
                                  "line": 724,
                                  "column": 14
                                }
                              },
                              "name": "states"
                            },
                            "property": {
                              "type": "Literal",
                              "start": 30338,
                              "end": 30339,
                              "loc": {
                                "start": {
                                  "line": 724,
                                  "column": 15
                                },
                                "end": {
                                  "line": 724,
                                  "column": 16
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            },
                            "computed": true
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 30341,
                            "end": 30348,
                            "loc": {
                              "start": {
                                "line": 724,
                                "column": 18
                              },
                              "end": {
                                "line": 724,
                                "column": 25
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "FunctionExpression",
                            "start": 30349,
                            "end": 30852,
                            "loc": {
                              "start": {
                                "line": 724,
                                "column": 26
                              },
                              "end": {
                                "line": 735,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 30358,
                                "end": 30366,
                                "loc": {
                                  "start": {
                                    "line": 724,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 724,
                                    "column": 43
                                  }
                                },
                                "name": "subState"
                              },
                              {
                                "type": "Identifier",
                                "start": 30368,
                                "end": 30374,
                                "loc": {
                                  "start": {
                                    "line": 724,
                                    "column": 45
                                  },
                                  "end": {
                                    "line": 724,
                                    "column": 51
                                  }
                                },
                                "name": "object"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 30376,
                              "end": 30852,
                              "loc": {
                                "start": {
                                  "line": 724,
                                  "column": 53
                                },
                                "end": {
                                  "line": 735,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "IfStatement",
                                  "start": 30390,
                                  "end": 30422,
                                  "loc": {
                                    "start": {
                                      "line": 725,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 725,
                                      "column": 44
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 30394,
                                    "end": 30413,
                                    "loc": {
                                      "start": {
                                        "line": 725,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 725,
                                        "column": 35
                                      }
                                    },
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 30394,
                                      "end": 30407,
                                      "loc": {
                                        "start": {
                                          "line": 725,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 725,
                                          "column": 29
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 30394,
                                        "end": 30402,
                                        "loc": {
                                          "start": {
                                            "line": 725,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 725,
                                            "column": 24
                                          }
                                        },
                                        "name": "subState"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 30403,
                                        "end": 30407,
                                        "loc": {
                                          "start": {
                                            "line": 725,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 725,
                                            "column": 29
                                          }
                                        },
                                        "name": "size"
                                      },
                                      "computed": false
                                    },
                                    "operator": "===",
                                    "right": {
                                      "type": "Literal",
                                      "start": 30412,
                                      "end": 30413,
                                      "loc": {
                                        "start": {
                                          "line": 725,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 725,
                                          "column": 35
                                        }
                                      },
                                      "value": 0,
                                      "rawValue": 0,
                                      "raw": "0"
                                    }
                                  },
                                  "consequent": {
                                    "type": "ReturnStatement",
                                    "start": 30415,
                                    "end": 30422,
                                    "loc": {
                                      "start": {
                                        "line": 725,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 725,
                                        "column": 44
                                      }
                                    },
                                    "argument": null
                                  },
                                  "alternate": null
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 30435,
                                  "end": 30476,
                                  "loc": {
                                    "start": {
                                      "line": 726,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 726,
                                      "column": 53
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 30439,
                                      "end": 30475,
                                      "loc": {
                                        "start": {
                                          "line": 726,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 726,
                                          "column": 52
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 30439,
                                        "end": 30451,
                                        "loc": {
                                          "start": {
                                            "line": 726,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 726,
                                            "column": 28
                                          }
                                        },
                                        "name": "nextSubState"
                                      },
                                      "init": {
                                        "type": "CallExpression",
                                        "start": 30454,
                                        "end": 30475,
                                        "loc": {
                                          "start": {
                                            "line": 726,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 726,
                                            "column": 52
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 30454,
                                          "end": 30467,
                                          "loc": {
                                            "start": {
                                              "line": 726,
                                              "column": 31
                                            },
                                            "end": {
                                              "line": 726,
                                              "column": 44
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 30454,
                                            "end": 30463,
                                            "loc": {
                                              "start": {
                                                "line": 726,
                                                "column": 31
                                              },
                                              "end": {
                                                "line": 726,
                                                "column": 40
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 30454,
                                              "end": 30460,
                                              "loc": {
                                                "start": {
                                                  "line": 726,
                                                  "column": 31
                                                },
                                                "end": {
                                                  "line": 726,
                                                  "column": 37
                                                }
                                              },
                                              "name": "states"
                                            },
                                            "property": {
                                              "type": "Literal",
                                              "start": 30461,
                                              "end": 30462,
                                              "loc": {
                                                "start": {
                                                  "line": 726,
                                                  "column": 38
                                                },
                                                "end": {
                                                  "line": 726,
                                                  "column": 39
                                                }
                                              },
                                              "value": 1,
                                              "rawValue": 1,
                                              "raw": "1"
                                            },
                                            "computed": true
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 30464,
                                            "end": 30467,
                                            "loc": {
                                              "start": {
                                                "line": 726,
                                                "column": 41
                                              },
                                              "end": {
                                                "line": 726,
                                                "column": 44
                                              }
                                            },
                                            "name": "get"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 30468,
                                            "end": 30474,
                                            "loc": {
                                              "start": {
                                                "line": 726,
                                                "column": 45
                                              },
                                              "end": {
                                                "line": 726,
                                                "column": 51
                                              }
                                            },
                                            "name": "object"
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 30490,
                                  "end": 30842,
                                  "loc": {
                                    "start": {
                                      "line": 728,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 734,
                                      "column": 13
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 30494,
                                    "end": 30517,
                                    "loc": {
                                      "start": {
                                        "line": 728,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 728,
                                        "column": 39
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 30494,
                                      "end": 30500,
                                      "loc": {
                                        "start": {
                                          "line": 728,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 728,
                                          "column": 22
                                        }
                                      },
                                      "name": "object"
                                    },
                                    "operator": "instanceof",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 30512,
                                      "end": 30517,
                                      "loc": {
                                        "start": {
                                          "line": 728,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 728,
                                          "column": 39
                                        }
                                      },
                                      "name": "Point"
                                    }
                                  },
                                  "consequent": {
                                    "type": "BlockStatement",
                                    "start": 30519,
                                    "end": 30620,
                                    "loc": {
                                      "start": {
                                        "line": 728,
                                        "column": 41
                                      },
                                      "end": {
                                        "line": 730,
                                        "column": 13
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 30537,
                                        "end": 30606,
                                        "loc": {
                                          "start": {
                                            "line": 729,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 729,
                                            "column": 85
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 30537,
                                          "end": 30605,
                                          "loc": {
                                            "start": {
                                              "line": 729,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 729,
                                              "column": 84
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 30537,
                                            "end": 30549,
                                            "loc": {
                                              "start": {
                                                "line": 729,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 729,
                                                "column": 28
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 30537,
                                              "end": 30545,
                                              "loc": {
                                                "start": {
                                                  "line": 729,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 729,
                                                  "column": 24
                                                }
                                              },
                                              "name": "subState"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 30546,
                                              "end": 30549,
                                              "loc": {
                                                "start": {
                                                  "line": 729,
                                                  "column": 25
                                                },
                                                "end": {
                                                  "line": 729,
                                                  "column": 28
                                                }
                                              },
                                              "name": "set"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "Identifier",
                                              "start": 30550,
                                              "end": 30556,
                                              "loc": {
                                                "start": {
                                                  "line": 729,
                                                  "column": 29
                                                },
                                                "end": {
                                                  "line": 729,
                                                  "column": 35
                                                }
                                              },
                                              "name": "object"
                                            },
                                            {
                                              "type": "CallExpression",
                                              "start": 30558,
                                              "end": 30604,
                                              "loc": {
                                                "start": {
                                                  "line": 729,
                                                  "column": 37
                                                },
                                                "end": {
                                                  "line": 729,
                                                  "column": 83
                                                }
                                              },
                                              "callee": {
                                                "type": "Identifier",
                                                "start": 30558,
                                                "end": 30570,
                                                "loc": {
                                                  "start": {
                                                    "line": 729,
                                                    "column": 37
                                                  },
                                                  "end": {
                                                    "line": 729,
                                                    "column": 49
                                                  }
                                                },
                                                "name": "getPointDiff"
                                              },
                                              "arguments": [
                                                {
                                                  "type": "Identifier",
                                                  "start": 30571,
                                                  "end": 30577,
                                                  "loc": {
                                                    "start": {
                                                      "line": 729,
                                                      "column": 50
                                                    },
                                                    "end": {
                                                      "line": 729,
                                                      "column": 56
                                                    }
                                                  },
                                                  "name": "object"
                                                },
                                                {
                                                  "type": "ArrayExpression",
                                                  "start": 30579,
                                                  "end": 30603,
                                                  "loc": {
                                                    "start": {
                                                      "line": 729,
                                                      "column": 58
                                                    },
                                                    "end": {
                                                      "line": 729,
                                                      "column": 82
                                                    }
                                                  },
                                                  "elements": [
                                                    {
                                                      "type": "Identifier",
                                                      "start": 30580,
                                                      "end": 30588,
                                                      "loc": {
                                                        "start": {
                                                          "line": 729,
                                                          "column": 59
                                                        },
                                                        "end": {
                                                          "line": 729,
                                                          "column": 67
                                                        }
                                                      },
                                                      "name": "subState"
                                                    },
                                                    {
                                                      "type": "Identifier",
                                                      "start": 30590,
                                                      "end": 30602,
                                                      "loc": {
                                                        "start": {
                                                          "line": 729,
                                                          "column": 69
                                                        },
                                                        "end": {
                                                          "line": 729,
                                                          "column": 81
                                                        }
                                                      },
                                                      "name": "nextSubState"
                                                    }
                                                  ]
                                                }
                                              ]
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  },
                                  "alternate": {
                                    "type": "IfStatement",
                                    "start": 30626,
                                    "end": 30842,
                                    "loc": {
                                      "start": {
                                        "line": 730,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 734,
                                        "column": 13
                                      }
                                    },
                                    "test": {
                                      "type": "BinaryExpression",
                                      "start": 30630,
                                      "end": 30652,
                                      "loc": {
                                        "start": {
                                          "line": 730,
                                          "column": 23
                                        },
                                        "end": {
                                          "line": 730,
                                          "column": 45
                                        }
                                      },
                                      "left": {
                                        "type": "Identifier",
                                        "start": 30630,
                                        "end": 30636,
                                        "loc": {
                                          "start": {
                                            "line": 730,
                                            "column": 23
                                          },
                                          "end": {
                                            "line": 730,
                                            "column": 29
                                          }
                                        },
                                        "name": "object"
                                      },
                                      "operator": "instanceof",
                                      "right": {
                                        "type": "Identifier",
                                        "start": 30648,
                                        "end": 30652,
                                        "loc": {
                                          "start": {
                                            "line": 730,
                                            "column": 41
                                          },
                                          "end": {
                                            "line": 730,
                                            "column": 45
                                          }
                                        },
                                        "name": "Line"
                                      }
                                    },
                                    "consequent": {
                                      "type": "BlockStatement",
                                      "start": 30654,
                                      "end": 30732,
                                      "loc": {
                                        "start": {
                                          "line": 730,
                                          "column": 47
                                        },
                                        "end": {
                                          "line": 732,
                                          "column": 13
                                        }
                                      },
                                      "body": [
                                        {
                                          "type": "ExpressionStatement",
                                          "start": 30672,
                                          "end": 30718,
                                          "loc": {
                                            "start": {
                                              "line": 731,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 731,
                                              "column": 62
                                            }
                                          },
                                          "expression": {
                                            "type": "CallExpression",
                                            "start": 30672,
                                            "end": 30717,
                                            "loc": {
                                              "start": {
                                                "line": 731,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 731,
                                                "column": 61
                                              }
                                            },
                                            "callee": {
                                              "type": "Identifier",
                                              "start": 30672,
                                              "end": 30683,
                                              "loc": {
                                                "start": {
                                                  "line": 731,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 731,
                                                  "column": 27
                                                }
                                              },
                                              "name": "getLineDiff"
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 30684,
                                                "end": 30690,
                                                "loc": {
                                                  "start": {
                                                    "line": 731,
                                                    "column": 28
                                                  },
                                                  "end": {
                                                    "line": 731,
                                                    "column": 34
                                                  }
                                                },
                                                "name": "object"
                                              },
                                              {
                                                "type": "ArrayExpression",
                                                "start": 30692,
                                                "end": 30716,
                                                "loc": {
                                                  "start": {
                                                    "line": 731,
                                                    "column": 36
                                                  },
                                                  "end": {
                                                    "line": 731,
                                                    "column": 60
                                                  }
                                                },
                                                "elements": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 30693,
                                                    "end": 30701,
                                                    "loc": {
                                                      "start": {
                                                        "line": 731,
                                                        "column": 37
                                                      },
                                                      "end": {
                                                        "line": 731,
                                                        "column": 45
                                                      }
                                                    },
                                                    "name": "subState"
                                                  },
                                                  {
                                                    "type": "Identifier",
                                                    "start": 30703,
                                                    "end": 30715,
                                                    "loc": {
                                                      "start": {
                                                        "line": 731,
                                                        "column": 47
                                                      },
                                                      "end": {
                                                        "line": 731,
                                                        "column": 59
                                                      }
                                                    },
                                                    "name": "nextSubState"
                                                  }
                                                ]
                                              }
                                            ]
                                          }
                                        }
                                      ]
                                    },
                                    "alternate": {
                                      "type": "IfStatement",
                                      "start": 30738,
                                      "end": 30842,
                                      "loc": {
                                        "start": {
                                          "line": 732,
                                          "column": 19
                                        },
                                        "end": {
                                          "line": 734,
                                          "column": 13
                                        }
                                      },
                                      "test": {
                                        "type": "BinaryExpression",
                                        "start": 30742,
                                        "end": 30763,
                                        "loc": {
                                          "start": {
                                            "line": 732,
                                            "column": 23
                                          },
                                          "end": {
                                            "line": 732,
                                            "column": 44
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 30742,
                                          "end": 30748,
                                          "loc": {
                                            "start": {
                                              "line": 732,
                                              "column": 23
                                            },
                                            "end": {
                                              "line": 732,
                                              "column": 29
                                            }
                                          },
                                          "name": "object"
                                        },
                                        "operator": "instanceof",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 30760,
                                          "end": 30763,
                                          "loc": {
                                            "start": {
                                              "line": 732,
                                              "column": 41
                                            },
                                            "end": {
                                              "line": 732,
                                              "column": 44
                                            }
                                          },
                                          "name": "Arc"
                                        }
                                      },
                                      "consequent": {
                                        "type": "BlockStatement",
                                        "start": 30765,
                                        "end": 30842,
                                        "loc": {
                                          "start": {
                                            "line": 732,
                                            "column": 46
                                          },
                                          "end": {
                                            "line": 734,
                                            "column": 13
                                          }
                                        },
                                        "body": [
                                          {
                                            "type": "ExpressionStatement",
                                            "start": 30783,
                                            "end": 30828,
                                            "loc": {
                                              "start": {
                                                "line": 733,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 733,
                                                "column": 61
                                              }
                                            },
                                            "expression": {
                                              "type": "CallExpression",
                                              "start": 30783,
                                              "end": 30827,
                                              "loc": {
                                                "start": {
                                                  "line": 733,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 733,
                                                  "column": 60
                                                }
                                              },
                                              "callee": {
                                                "type": "Identifier",
                                                "start": 30783,
                                                "end": 30793,
                                                "loc": {
                                                  "start": {
                                                    "line": 733,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 733,
                                                    "column": 26
                                                  }
                                                },
                                                "name": "getArcDiff"
                                              },
                                              "arguments": [
                                                {
                                                  "type": "Identifier",
                                                  "start": 30794,
                                                  "end": 30800,
                                                  "loc": {
                                                    "start": {
                                                      "line": 733,
                                                      "column": 27
                                                    },
                                                    "end": {
                                                      "line": 733,
                                                      "column": 33
                                                    }
                                                  },
                                                  "name": "object"
                                                },
                                                {
                                                  "type": "ArrayExpression",
                                                  "start": 30802,
                                                  "end": 30826,
                                                  "loc": {
                                                    "start": {
                                                      "line": 733,
                                                      "column": 35
                                                    },
                                                    "end": {
                                                      "line": 733,
                                                      "column": 59
                                                    }
                                                  },
                                                  "elements": [
                                                    {
                                                      "type": "Identifier",
                                                      "start": 30803,
                                                      "end": 30811,
                                                      "loc": {
                                                        "start": {
                                                          "line": 733,
                                                          "column": 36
                                                        },
                                                        "end": {
                                                          "line": 733,
                                                          "column": 44
                                                        }
                                                      },
                                                      "name": "subState"
                                                    },
                                                    {
                                                      "type": "Identifier",
                                                      "start": 30813,
                                                      "end": 30825,
                                                      "loc": {
                                                        "start": {
                                                          "line": 733,
                                                          "column": 46
                                                        },
                                                        "end": {
                                                          "line": 733,
                                                          "column": 58
                                                        }
                                                      },
                                                      "name": "nextSubState"
                                                    }
                                                  ]
                                                }
                                              ]
                                            }
                                          }
                                        ]
                                      },
                                      "alternate": null
                                    }
                                  }
                                }
                              ]
                            }
                          },
                          {
                            "type": "ThisExpression",
                            "start": 30854,
                            "end": 30858,
                            "loc": {
                              "start": {
                                "line": 735,
                                "column": 11
                              },
                              "end": {
                                "line": 735,
                                "column": 15
                              }
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 30870,
                      "end": 30887,
                      "loc": {
                        "start": {
                          "line": 737,
                          "column": 8
                        },
                        "end": {
                          "line": 737,
                          "column": 25
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 30877,
                        "end": 30886,
                        "loc": {
                          "start": {
                            "line": 737,
                            "column": 15
                          },
                          "end": {
                            "line": 737,
                            "column": 24
                          }
                        },
                        "name": "stateDiff"
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 30899,
              "end": 31544,
              "loc": {
                "start": {
                  "line": 740,
                  "column": 4
                },
                "end": {
                  "line": 754,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 30899,
                "end": 30913,
                "loc": {
                  "start": {
                    "line": 740,
                    "column": 4
                  },
                  "end": {
                    "line": 740,
                    "column": 18
                  }
                },
                "name": "applyStateDiff"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 30913,
                "end": 31544,
                "loc": {
                  "start": {
                    "line": 740,
                    "column": 18
                  },
                  "end": {
                    "line": 754,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 30914,
                    "end": 30923,
                    "loc": {
                      "start": {
                        "line": 740,
                        "column": 19
                      },
                      "end": {
                        "line": 740,
                        "column": 28
                      }
                    },
                    "name": "stateDiff"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 30925,
                  "end": 31544,
                  "loc": {
                    "start": {
                      "line": 740,
                      "column": 30
                    },
                    "end": {
                      "line": 754,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 30935,
                      "end": 31361,
                      "loc": {
                        "start": {
                          "line": 741,
                          "column": 8
                        },
                        "end": {
                          "line": 750,
                          "column": 17
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 30935,
                        "end": 31360,
                        "loc": {
                          "start": {
                            "line": 741,
                            "column": 8
                          },
                          "end": {
                            "line": 750,
                            "column": 16
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 30935,
                          "end": 30952,
                          "loc": {
                            "start": {
                              "line": 741,
                              "column": 8
                            },
                            "end": {
                              "line": 741,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 30935,
                            "end": 30944,
                            "loc": {
                              "start": {
                                "line": 741,
                                "column": 8
                              },
                              "end": {
                                "line": 741,
                                "column": 17
                              }
                            },
                            "name": "stateDiff"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 30945,
                            "end": 30952,
                            "loc": {
                              "start": {
                                "line": 741,
                                "column": 18
                              },
                              "end": {
                                "line": 741,
                                "column": 25
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "FunctionExpression",
                            "start": 30953,
                            "end": 31353,
                            "loc": {
                              "start": {
                                "line": 741,
                                "column": 26
                              },
                              "end": {
                                "line": 750,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 30962,
                                "end": 30969,
                                "loc": {
                                  "start": {
                                    "line": 741,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 741,
                                    "column": 42
                                  }
                                },
                                "name": "subDiff"
                              },
                              {
                                "type": "Identifier",
                                "start": 30971,
                                "end": 30977,
                                "loc": {
                                  "start": {
                                    "line": 741,
                                    "column": 44
                                  },
                                  "end": {
                                    "line": 741,
                                    "column": 50
                                  }
                                },
                                "name": "object"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 30979,
                              "end": 31353,
                              "loc": {
                                "start": {
                                  "line": 741,
                                  "column": 52
                                },
                                "end": {
                                  "line": 750,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "IfStatement",
                                  "start": 30993,
                                  "end": 31215,
                                  "loc": {
                                    "start": {
                                      "line": 742,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 746,
                                      "column": 13
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 30997,
                                    "end": 31018,
                                    "loc": {
                                      "start": {
                                        "line": 742,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 742,
                                        "column": 37
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 30997,
                                      "end": 31004,
                                      "loc": {
                                        "start": {
                                          "line": 742,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 742,
                                          "column": 23
                                        }
                                      },
                                      "name": "subDiff"
                                    },
                                    "operator": "===",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 31009,
                                      "end": 31018,
                                      "loc": {
                                        "start": {
                                          "line": 742,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 742,
                                          "column": 37
                                        }
                                      },
                                      "name": "undefined"
                                    }
                                  },
                                  "consequent": {
                                    "type": "BlockStatement",
                                    "start": 31020,
                                    "end": 31215,
                                    "loc": {
                                      "start": {
                                        "line": 742,
                                        "column": 39
                                      },
                                      "end": {
                                        "line": 746,
                                        "column": 13
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "IfStatement",
                                        "start": 31038,
                                        "end": 31130,
                                        "loc": {
                                          "start": {
                                            "line": 743,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 743,
                                            "column": 108
                                          }
                                        },
                                        "test": {
                                          "type": "UnaryExpression",
                                          "start": 31042,
                                          "end": 31066,
                                          "loc": {
                                            "start": {
                                              "line": 743,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 743,
                                              "column": 44
                                            }
                                          },
                                          "operator": "!",
                                          "prefix": true,
                                          "argument": {
                                            "type": "CallExpression",
                                            "start": 31043,
                                            "end": 31066,
                                            "loc": {
                                              "start": {
                                                "line": 743,
                                                "column": 21
                                              },
                                              "end": {
                                                "line": 743,
                                                "column": 44
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 31043,
                                              "end": 31058,
                                              "loc": {
                                                "start": {
                                                  "line": 743,
                                                  "column": 21
                                                },
                                                "end": {
                                                  "line": 743,
                                                  "column": 36
                                                }
                                              },
                                              "object": {
                                                "type": "ThisExpression",
                                                "start": 31043,
                                                "end": 31047,
                                                "loc": {
                                                  "start": {
                                                    "line": 743,
                                                    "column": 21
                                                  },
                                                  "end": {
                                                    "line": 743,
                                                    "column": 25
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 31048,
                                                "end": 31058,
                                                "loc": {
                                                  "start": {
                                                    "line": 743,
                                                    "column": 26
                                                  },
                                                  "end": {
                                                    "line": 743,
                                                    "column": 36
                                                  }
                                                },
                                                "name": "isOnSketch"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 31059,
                                                "end": 31065,
                                                "loc": {
                                                  "start": {
                                                    "line": 743,
                                                    "column": 37
                                                  },
                                                  "end": {
                                                    "line": 743,
                                                    "column": 43
                                                  }
                                                },
                                                "name": "object"
                                              }
                                            ]
                                          }
                                        },
                                        "consequent": {
                                          "type": "ExpressionStatement",
                                          "start": 31068,
                                          "end": 31130,
                                          "loc": {
                                            "start": {
                                              "line": 743,
                                              "column": 46
                                            },
                                            "end": {
                                              "line": 743,
                                              "column": 108
                                            }
                                          },
                                          "expression": {
                                            "type": "CallExpression",
                                            "start": 31068,
                                            "end": 31129,
                                            "loc": {
                                              "start": {
                                                "line": 743,
                                                "column": 46
                                              },
                                              "end": {
                                                "line": 743,
                                                "column": 107
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 31068,
                                              "end": 31081,
                                              "loc": {
                                                "start": {
                                                  "line": 743,
                                                  "column": 46
                                                },
                                                "end": {
                                                  "line": 743,
                                                  "column": 59
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 31068,
                                                "end": 31075,
                                                "loc": {
                                                  "start": {
                                                    "line": 743,
                                                    "column": 46
                                                  },
                                                  "end": {
                                                    "line": 743,
                                                    "column": 53
                                                  }
                                                },
                                                "name": "console"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 31076,
                                                "end": 31081,
                                                "loc": {
                                                  "start": {
                                                    "line": 743,
                                                    "column": 54
                                                  },
                                                  "end": {
                                                    "line": 743,
                                                    "column": 59
                                                  }
                                                },
                                                "name": "error"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Literal",
                                                "start": 31082,
                                                "end": 31117,
                                                "loc": {
                                                  "start": {
                                                    "line": 743,
                                                    "column": 60
                                                  },
                                                  "end": {
                                                    "line": 743,
                                                    "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": 31119,
                                                "end": 31128,
                                                "loc": {
                                                  "start": {
                                                    "line": 743,
                                                    "column": 97
                                                  },
                                                  "end": {
                                                    "line": 743,
                                                    "column": 106
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 31119,
                                                  "end": 31125,
                                                  "loc": {
                                                    "start": {
                                                      "line": 743,
                                                      "column": 97
                                                    },
                                                    "end": {
                                                      "line": 743,
                                                      "column": 103
                                                    }
                                                  },
                                                  "name": "object"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 31126,
                                                  "end": 31128,
                                                  "loc": {
                                                    "start": {
                                                      "line": 743,
                                                      "column": 104
                                                    },
                                                    "end": {
                                                      "line": 743,
                                                      "column": 106
                                                    }
                                                  },
                                                  "name": "id"
                                                },
                                                "computed": false
                                              }
                                            ]
                                          }
                                        },
                                        "alternate": null
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 31147,
                                        "end": 31177,
                                        "loc": {
                                          "start": {
                                            "line": 744,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 744,
                                            "column": 46
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 31147,
                                          "end": 31176,
                                          "loc": {
                                            "start": {
                                              "line": 744,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 744,
                                              "column": 45
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 31147,
                                            "end": 31168,
                                            "loc": {
                                              "start": {
                                                "line": 744,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 744,
                                                "column": 37
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 31147,
                                              "end": 31151,
                                              "loc": {
                                                "start": {
                                                  "line": 744,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 744,
                                                  "column": 20
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 31152,
                                              "end": 31168,
                                              "loc": {
                                                "start": {
                                                  "line": 744,
                                                  "column": 21
                                                },
                                                "end": {
                                                  "line": 744,
                                                  "column": 37
                                                }
                                              },
                                              "name": "removeFromSketch"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "Identifier",
                                              "start": 31169,
                                              "end": 31175,
                                              "loc": {
                                                "start": {
                                                  "line": 744,
                                                  "column": 38
                                                },
                                                "end": {
                                                  "line": 744,
                                                  "column": 44
                                                }
                                              },
                                              "name": "object"
                                            }
                                          ]
                                        }
                                      },
                                      {
                                        "type": "ReturnStatement",
                                        "start": 31194,
                                        "end": 31201,
                                        "loc": {
                                          "start": {
                                            "line": 745,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 745,
                                            "column": 23
                                          }
                                        },
                                        "argument": null
                                      }
                                    ]
                                  },
                                  "alternate": null
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 31228,
                                  "end": 31299,
                                  "loc": {
                                    "start": {
                                      "line": 747,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 748,
                                      "column": 41
                                    }
                                  },
                                  "test": {
                                    "type": "UnaryExpression",
                                    "start": 31232,
                                    "end": 31256,
                                    "loc": {
                                      "start": {
                                        "line": 747,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 747,
                                        "column": 40
                                      }
                                    },
                                    "operator": "!",
                                    "prefix": true,
                                    "argument": {
                                      "type": "CallExpression",
                                      "start": 31233,
                                      "end": 31256,
                                      "loc": {
                                        "start": {
                                          "line": 747,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 747,
                                          "column": 40
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 31233,
                                        "end": 31248,
                                        "loc": {
                                          "start": {
                                            "line": 747,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 747,
                                            "column": 32
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 31233,
                                          "end": 31237,
                                          "loc": {
                                            "start": {
                                              "line": 747,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 747,
                                              "column": 21
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 31238,
                                          "end": 31248,
                                          "loc": {
                                            "start": {
                                              "line": 747,
                                              "column": 22
                                            },
                                            "end": {
                                              "line": 747,
                                              "column": 32
                                            }
                                          },
                                          "name": "isOnSketch"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 31249,
                                          "end": 31255,
                                          "loc": {
                                            "start": {
                                              "line": 747,
                                              "column": 33
                                            },
                                            "end": {
                                              "line": 747,
                                              "column": 39
                                            }
                                          },
                                          "name": "object"
                                        }
                                      ]
                                    }
                                  },
                                  "consequent": {
                                    "type": "ExpressionStatement",
                                    "start": 31274,
                                    "end": 31299,
                                    "loc": {
                                      "start": {
                                        "line": 748,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 748,
                                        "column": 41
                                      }
                                    },
                                    "expression": {
                                      "type": "CallExpression",
                                      "start": 31274,
                                      "end": 31298,
                                      "loc": {
                                        "start": {
                                          "line": 748,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 748,
                                          "column": 40
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 31274,
                                        "end": 31290,
                                        "loc": {
                                          "start": {
                                            "line": 748,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 748,
                                            "column": 32
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 31274,
                                          "end": 31278,
                                          "loc": {
                                            "start": {
                                              "line": 748,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 748,
                                              "column": 20
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 31279,
                                          "end": 31290,
                                          "loc": {
                                            "start": {
                                              "line": 748,
                                              "column": 21
                                            },
                                            "end": {
                                              "line": 748,
                                              "column": 32
                                            }
                                          },
                                          "name": "addToSketch"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 31291,
                                          "end": 31297,
                                          "loc": {
                                            "start": {
                                              "line": 748,
                                              "column": 33
                                            },
                                            "end": {
                                              "line": 748,
                                              "column": 39
                                            }
                                          },
                                          "name": "object"
                                        }
                                      ]
                                    }
                                  },
                                  "alternate": null
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 31312,
                                  "end": 31343,
                                  "loc": {
                                    "start": {
                                      "line": 749,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 749,
                                      "column": 43
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 31312,
                                    "end": 31342,
                                    "loc": {
                                      "start": {
                                        "line": 749,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 749,
                                        "column": 42
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 31312,
                                      "end": 31333,
                                      "loc": {
                                        "start": {
                                          "line": 749,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 749,
                                          "column": 33
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 31312,
                                        "end": 31318,
                                        "loc": {
                                          "start": {
                                            "line": 749,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 749,
                                            "column": 18
                                          }
                                        },
                                        "name": "object"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 31319,
                                        "end": 31333,
                                        "loc": {
                                          "start": {
                                            "line": 749,
                                            "column": 19
                                          },
                                          "end": {
                                            "line": 749,
                                            "column": 33
                                          }
                                        },
                                        "name": "applyStateDiff"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 31334,
                                        "end": 31341,
                                        "loc": {
                                          "start": {
                                            "line": 749,
                                            "column": 34
                                          },
                                          "end": {
                                            "line": 749,
                                            "column": 41
                                          }
                                        },
                                        "name": "subDiff"
                                      }
                                    ]
                                  }
                                }
                              ]
                            }
                          },
                          {
                            "type": "ThisExpression",
                            "start": 31355,
                            "end": 31359,
                            "loc": {
                              "start": {
                                "line": 750,
                                "column": 11
                              },
                              "end": {
                                "line": 750,
                                "column": 15
                              }
                            }
                          }
                        ]
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " geometry of any object (even not in stateDiff) could have been invalidated",
                          "start": 31370,
                          "end": 31447,
                          "loc": {
                            "start": {
                              "line": 751,
                              "column": 8
                            },
                            "end": {
                              "line": 751,
                              "column": 85
                            }
                          },
                          "range": [
                            31370,
                            31447
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ForOfStatement",
                      "start": 31456,
                      "end": 31538,
                      "loc": {
                        "start": {
                          "line": 752,
                          "column": 8
                        },
                        "end": {
                          "line": 753,
                          "column": 36
                        }
                      },
                      "left": {
                        "type": "VariableDeclaration",
                        "start": 31461,
                        "end": 31471,
                        "loc": {
                          "start": {
                            "line": 752,
                            "column": 13
                          },
                          "end": {
                            "line": 752,
                            "column": 23
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 31465,
                            "end": 31471,
                            "loc": {
                              "start": {
                                "line": 752,
                                "column": 17
                              },
                              "end": {
                                "line": 752,
                                "column": 23
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 31465,
                              "end": 31471,
                              "loc": {
                                "start": {
                                  "line": 752,
                                  "column": 17
                                },
                                "end": {
                                  "line": 752,
                                  "column": 23
                                }
                              },
                              "name": "object",
                              "leadingComments": null
                            },
                            "init": null,
                            "leadingComments": null
                          }
                        ],
                        "kind": "var",
                        "leadingComments": null
                      },
                      "right": {
                        "type": "CallExpression",
                        "start": 31475,
                        "end": 31500,
                        "loc": {
                          "start": {
                            "line": 752,
                            "column": 27
                          },
                          "end": {
                            "line": 752,
                            "column": 52
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 31475,
                          "end": 31498,
                          "loc": {
                            "start": {
                              "line": 752,
                              "column": 27
                            },
                            "end": {
                              "line": 752,
                              "column": 50
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 31475,
                            "end": 31479,
                            "loc": {
                              "start": {
                                "line": 752,
                                "column": 27
                              },
                              "end": {
                                "line": 752,
                                "column": 31
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 31480,
                            "end": 31498,
                            "loc": {
                              "start": {
                                "line": 752,
                                "column": 32
                              },
                              "end": {
                                "line": 752,
                                "column": 50
                              }
                            },
                            "name": "getObjectsOnSketch"
                          },
                          "computed": false
                        },
                        "arguments": []
                      },
                      "body": {
                        "type": "ExpressionStatement",
                        "start": 31514,
                        "end": 31538,
                        "loc": {
                          "start": {
                            "line": 753,
                            "column": 12
                          },
                          "end": {
                            "line": 753,
                            "column": 36
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 31514,
                          "end": 31537,
                          "loc": {
                            "start": {
                              "line": 753,
                              "column": 12
                            },
                            "end": {
                              "line": 753,
                              "column": 35
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 31514,
                            "end": 31535,
                            "loc": {
                              "start": {
                                "line": 753,
                                "column": 12
                              },
                              "end": {
                                "line": 753,
                                "column": 33
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 31514,
                              "end": 31520,
                              "loc": {
                                "start": {
                                  "line": 753,
                                  "column": 12
                                },
                                "end": {
                                  "line": 753,
                                  "column": 18
                                }
                              },
                              "name": "object"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 31521,
                              "end": 31535,
                              "loc": {
                                "start": {
                                  "line": 753,
                                  "column": 19
                                },
                                "end": {
                                  "line": 753,
                                  "column": 33
                                }
                              },
                              "name": "updateGeometry"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " geometry of any object (even not in stateDiff) could have been invalidated",
                          "start": 31370,
                          "end": 31447,
                          "loc": {
                            "start": {
                              "line": 751,
                              "column": 8
                            },
                            "end": {
                              "line": 751,
                              "column": 85
                            }
                          },
                          "range": [
                            31370,
                            31447
                          ]
                        }
                      ]
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 31550,
              "end": 31988,
              "loc": {
                "start": {
                  "line": 756,
                  "column": 4
                },
                "end": {
                  "line": 766,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 31550,
                "end": 31562,
                "loc": {
                  "start": {
                    "line": 756,
                    "column": 4
                  },
                  "end": {
                    "line": 756,
                    "column": 16
                  }
                },
                "name": "addStateDiff"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 31562,
                "end": 31988,
                "loc": {
                  "start": {
                    "line": 756,
                    "column": 16
                  },
                  "end": {
                    "line": 766,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 31563,
                    "end": 31572,
                    "loc": {
                      "start": {
                        "line": 756,
                        "column": 17
                      },
                      "end": {
                        "line": 756,
                        "column": 26
                      }
                    },
                    "name": "stateDiff"
                  },
                  {
                    "type": "Identifier",
                    "start": 31574,
                    "end": 31579,
                    "loc": {
                      "start": {
                        "line": 756,
                        "column": 28
                      },
                      "end": {
                        "line": 756,
                        "column": 33
                      }
                    },
                    "name": "alpha"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 31581,
                  "end": 31988,
                  "loc": {
                    "start": {
                      "line": 756,
                      "column": 35
                    },
                    "end": {
                      "line": 766,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 31591,
                      "end": 31805,
                      "loc": {
                        "start": {
                          "line": 757,
                          "column": 8
                        },
                        "end": {
                          "line": 762,
                          "column": 17
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 31591,
                        "end": 31804,
                        "loc": {
                          "start": {
                            "line": 757,
                            "column": 8
                          },
                          "end": {
                            "line": 762,
                            "column": 16
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 31591,
                          "end": 31608,
                          "loc": {
                            "start": {
                              "line": 757,
                              "column": 8
                            },
                            "end": {
                              "line": 757,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 31591,
                            "end": 31600,
                            "loc": {
                              "start": {
                                "line": 757,
                                "column": 8
                              },
                              "end": {
                                "line": 757,
                                "column": 17
                              }
                            },
                            "name": "stateDiff"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 31601,
                            "end": 31608,
                            "loc": {
                              "start": {
                                "line": 757,
                                "column": 18
                              },
                              "end": {
                                "line": 757,
                                "column": 25
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "FunctionExpression",
                            "start": 31609,
                            "end": 31797,
                            "loc": {
                              "start": {
                                "line": 757,
                                "column": 26
                              },
                              "end": {
                                "line": 762,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 31618,
                                "end": 31625,
                                "loc": {
                                  "start": {
                                    "line": 757,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 757,
                                    "column": 42
                                  }
                                },
                                "name": "subDiff"
                              },
                              {
                                "type": "Identifier",
                                "start": 31627,
                                "end": 31633,
                                "loc": {
                                  "start": {
                                    "line": 757,
                                    "column": 44
                                  },
                                  "end": {
                                    "line": 757,
                                    "column": 50
                                  }
                                },
                                "name": "object"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 31635,
                              "end": 31797,
                              "loc": {
                                "start": {
                                  "line": 757,
                                  "column": 52
                                },
                                "end": {
                                  "line": 762,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "IfStatement",
                                  "start": 31649,
                                  "end": 31738,
                                  "loc": {
                                    "start": {
                                      "line": 758,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 760,
                                      "column": 13
                                    }
                                  },
                                  "test": {
                                    "type": "LogicalExpression",
                                    "start": 31653,
                                    "end": 31697,
                                    "loc": {
                                      "start": {
                                        "line": 758,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 758,
                                        "column": 60
                                      }
                                    },
                                    "left": {
                                      "type": "BinaryExpression",
                                      "start": 31653,
                                      "end": 31669,
                                      "loc": {
                                        "start": {
                                          "line": 758,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 758,
                                          "column": 32
                                        }
                                      },
                                      "left": {
                                        "type": "Identifier",
                                        "start": 31653,
                                        "end": 31660,
                                        "loc": {
                                          "start": {
                                            "line": 758,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 758,
                                            "column": 23
                                          }
                                        },
                                        "name": "subDiff"
                                      },
                                      "operator": "===",
                                      "right": {
                                        "type": "Literal",
                                        "start": 31665,
                                        "end": 31669,
                                        "loc": {
                                          "start": {
                                            "line": 758,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 758,
                                            "column": 32
                                          }
                                        },
                                        "value": null,
                                        "rawValue": null,
                                        "raw": "null"
                                      }
                                    },
                                    "operator": "||",
                                    "right": {
                                      "type": "UnaryExpression",
                                      "start": 31673,
                                      "end": 31697,
                                      "loc": {
                                        "start": {
                                          "line": 758,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 758,
                                          "column": 60
                                        }
                                      },
                                      "operator": "!",
                                      "prefix": true,
                                      "argument": {
                                        "type": "CallExpression",
                                        "start": 31674,
                                        "end": 31697,
                                        "loc": {
                                          "start": {
                                            "line": 758,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 758,
                                            "column": 60
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 31674,
                                          "end": 31689,
                                          "loc": {
                                            "start": {
                                              "line": 758,
                                              "column": 37
                                            },
                                            "end": {
                                              "line": 758,
                                              "column": 52
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 31674,
                                            "end": 31678,
                                            "loc": {
                                              "start": {
                                                "line": 758,
                                                "column": 37
                                              },
                                              "end": {
                                                "line": 758,
                                                "column": 41
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 31679,
                                            "end": 31689,
                                            "loc": {
                                              "start": {
                                                "line": 758,
                                                "column": 42
                                              },
                                              "end": {
                                                "line": 758,
                                                "column": 52
                                              }
                                            },
                                            "name": "isOnSketch"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 31690,
                                            "end": 31696,
                                            "loc": {
                                              "start": {
                                                "line": 758,
                                                "column": 53
                                              },
                                              "end": {
                                                "line": 758,
                                                "column": 59
                                              }
                                            },
                                            "name": "object"
                                          }
                                        ]
                                      }
                                    }
                                  },
                                  "consequent": {
                                    "type": "BlockStatement",
                                    "start": 31699,
                                    "end": 31738,
                                    "loc": {
                                      "start": {
                                        "line": 758,
                                        "column": 62
                                      },
                                      "end": {
                                        "line": 760,
                                        "column": 13
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ReturnStatement",
                                        "start": 31717,
                                        "end": 31724,
                                        "loc": {
                                          "start": {
                                            "line": 759,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 759,
                                            "column": 23
                                          }
                                        },
                                        "argument": null
                                      }
                                    ]
                                  },
                                  "alternate": null
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 31751,
                                  "end": 31787,
                                  "loc": {
                                    "start": {
                                      "line": 761,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 761,
                                      "column": 48
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 31751,
                                    "end": 31786,
                                    "loc": {
                                      "start": {
                                        "line": 761,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 761,
                                        "column": 47
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 31751,
                                      "end": 31770,
                                      "loc": {
                                        "start": {
                                          "line": 761,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 761,
                                          "column": 31
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 31751,
                                        "end": 31757,
                                        "loc": {
                                          "start": {
                                            "line": 761,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 761,
                                            "column": 18
                                          }
                                        },
                                        "name": "object"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 31758,
                                        "end": 31770,
                                        "loc": {
                                          "start": {
                                            "line": 761,
                                            "column": 19
                                          },
                                          "end": {
                                            "line": 761,
                                            "column": 31
                                          }
                                        },
                                        "name": "addStateDiff"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 31771,
                                        "end": 31778,
                                        "loc": {
                                          "start": {
                                            "line": 761,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 761,
                                            "column": 39
                                          }
                                        },
                                        "name": "subDiff"
                                      },
                                      {
                                        "type": "Identifier",
                                        "start": 31780,
                                        "end": 31785,
                                        "loc": {
                                          "start": {
                                            "line": 761,
                                            "column": 41
                                          },
                                          "end": {
                                            "line": 761,
                                            "column": 46
                                          }
                                        },
                                        "name": "alpha"
                                      }
                                    ]
                                  }
                                }
                              ]
                            }
                          },
                          {
                            "type": "ThisExpression",
                            "start": 31799,
                            "end": 31803,
                            "loc": {
                              "start": {
                                "line": 762,
                                "column": 11
                              },
                              "end": {
                                "line": 762,
                                "column": 15
                              }
                            }
                          }
                        ]
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " geometry of any object (even not in stateDiff) could have been invalidated",
                          "start": 31814,
                          "end": 31891,
                          "loc": {
                            "start": {
                              "line": 763,
                              "column": 8
                            },
                            "end": {
                              "line": 763,
                              "column": 85
                            }
                          },
                          "range": [
                            31814,
                            31891
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ForOfStatement",
                      "start": 31900,
                      "end": 31982,
                      "loc": {
                        "start": {
                          "line": 764,
                          "column": 8
                        },
                        "end": {
                          "line": 765,
                          "column": 36
                        }
                      },
                      "left": {
                        "type": "VariableDeclaration",
                        "start": 31905,
                        "end": 31915,
                        "loc": {
                          "start": {
                            "line": 764,
                            "column": 13
                          },
                          "end": {
                            "line": 764,
                            "column": 23
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 31909,
                            "end": 31915,
                            "loc": {
                              "start": {
                                "line": 764,
                                "column": 17
                              },
                              "end": {
                                "line": 764,
                                "column": 23
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 31909,
                              "end": 31915,
                              "loc": {
                                "start": {
                                  "line": 764,
                                  "column": 17
                                },
                                "end": {
                                  "line": 764,
                                  "column": 23
                                }
                              },
                              "name": "object",
                              "leadingComments": null
                            },
                            "init": null,
                            "leadingComments": null
                          }
                        ],
                        "kind": "var",
                        "leadingComments": null
                      },
                      "right": {
                        "type": "CallExpression",
                        "start": 31919,
                        "end": 31944,
                        "loc": {
                          "start": {
                            "line": 764,
                            "column": 27
                          },
                          "end": {
                            "line": 764,
                            "column": 52
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 31919,
                          "end": 31942,
                          "loc": {
                            "start": {
                              "line": 764,
                              "column": 27
                            },
                            "end": {
                              "line": 764,
                              "column": 50
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 31919,
                            "end": 31923,
                            "loc": {
                              "start": {
                                "line": 764,
                                "column": 27
                              },
                              "end": {
                                "line": 764,
                                "column": 31
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 31924,
                            "end": 31942,
                            "loc": {
                              "start": {
                                "line": 764,
                                "column": 32
                              },
                              "end": {
                                "line": 764,
                                "column": 50
                              }
                            },
                            "name": "getObjectsOnSketch"
                          },
                          "computed": false
                        },
                        "arguments": []
                      },
                      "body": {
                        "type": "ExpressionStatement",
                        "start": 31958,
                        "end": 31982,
                        "loc": {
                          "start": {
                            "line": 765,
                            "column": 12
                          },
                          "end": {
                            "line": 765,
                            "column": 36
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 31958,
                          "end": 31981,
                          "loc": {
                            "start": {
                              "line": 765,
                              "column": 12
                            },
                            "end": {
                              "line": 765,
                              "column": 35
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 31958,
                            "end": 31979,
                            "loc": {
                              "start": {
                                "line": 765,
                                "column": 12
                              },
                              "end": {
                                "line": 765,
                                "column": 33
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 31958,
                              "end": 31964,
                              "loc": {
                                "start": {
                                  "line": 765,
                                  "column": 12
                                },
                                "end": {
                                  "line": 765,
                                  "column": 18
                                }
                              },
                              "name": "object"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 31965,
                              "end": 31979,
                              "loc": {
                                "start": {
                                  "line": 765,
                                  "column": 19
                                },
                                "end": {
                                  "line": 765,
                                  "column": 33
                                }
                              },
                              "name": "updateGeometry"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " geometry of any object (even not in stateDiff) could have been invalidated",
                          "start": 31814,
                          "end": 31891,
                          "loc": {
                            "start": {
                              "line": 763,
                              "column": 8
                            },
                            "end": {
                              "line": 763,
                              "column": 85
                            }
                          },
                          "range": [
                            31814,
                            31891
                          ]
                        }
                      ]
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 31994,
              "end": 32189,
              "loc": {
                "start": {
                  "line": 768,
                  "column": 4
                },
                "end": {
                  "line": 774,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 31994,
                "end": 32010,
                "loc": {
                  "start": {
                    "line": 768,
                    "column": 4
                  },
                  "end": {
                    "line": 768,
                    "column": 20
                  }
                },
                "name": "finishedUpdating"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 32010,
                "end": 32189,
                "loc": {
                  "start": {
                    "line": 768,
                    "column": 20
                  },
                  "end": {
                    "line": 774,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 32013,
                  "end": 32189,
                  "loc": {
                    "start": {
                      "line": 768,
                      "column": 23
                    },
                    "end": {
                      "line": 774,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 32023,
                      "end": 32159,
                      "loc": {
                        "start": {
                          "line": 769,
                          "column": 8
                        },
                        "end": {
                          "line": 772,
                          "column": 29
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 32027,
                        "end": 32063,
                        "loc": {
                          "start": {
                            "line": 769,
                            "column": 12
                          },
                          "end": {
                            "line": 769,
                            "column": 48
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 32027,
                          "end": 32054,
                          "loc": {
                            "start": {
                              "line": 769,
                              "column": 12
                            },
                            "end": {
                              "line": 769,
                              "column": 39
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 32027,
                            "end": 32040,
                            "loc": {
                              "start": {
                                "line": 769,
                                "column": 12
                              },
                              "end": {
                                "line": 769,
                                "column": 25
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 32027,
                              "end": 32031,
                              "loc": {
                                "start": {
                                  "line": 769,
                                  "column": 12
                                },
                                "end": {
                                  "line": 769,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 32032,
                              "end": 32040,
                              "loc": {
                                "start": {
                                  "line": 769,
                                  "column": 17
                                },
                                "end": {
                                  "line": 769,
                                  "column": 25
                                }
                              },
                              "name": "sketcher"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 32041,
                            "end": 32054,
                            "loc": {
                              "start": {
                                "line": 769,
                                "column": 26
                              },
                              "end": {
                                "line": 769,
                                "column": 39
                              }
                            },
                            "name": "currentSketch"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "ThisExpression",
                          "start": 32059,
                          "end": 32063,
                          "loc": {
                            "start": {
                              "line": 769,
                              "column": 44
                            },
                            "end": {
                              "line": 769,
                              "column": 48
                            }
                          }
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 32097,
                        "end": 32116,
                        "loc": {
                          "start": {
                            "line": 770,
                            "column": 12
                          },
                          "end": {
                            "line": 770,
                            "column": 31
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 32097,
                          "end": 32115,
                          "loc": {
                            "start": {
                              "line": 770,
                              "column": 12
                            },
                            "end": {
                              "line": 770,
                              "column": 30
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 32097,
                            "end": 32113,
                            "loc": {
                              "start": {
                                "line": 770,
                                "column": 12
                              },
                              "end": {
                                "line": 770,
                                "column": 28
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 32097,
                              "end": 32101,
                              "loc": {
                                "start": {
                                  "line": 770,
                                  "column": 12
                                },
                                "end": {
                                  "line": 770,
                                  "column": 16
                                }
                              },
                              "leadingComments": null
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 32102,
                              "end": 32113,
                              "loc": {
                                "start": {
                                  "line": 770,
                                  "column": 17
                                },
                                "end": {
                                  "line": 770,
                                  "column": 28
                                }
                              },
                              "name": "infiniteBox"
                            },
                            "computed": false,
                            "leadingComments": null
                          },
                          "arguments": [],
                          "leadingComments": null
                        },
                        "leadingComments": [
                          {
                            "type": "CommentLine",
                            "value": " FIXME less hacky",
                            "start": 32065,
                            "end": 32084,
                            "loc": {
                              "start": {
                                "line": 769,
                                "column": 50
                              },
                              "end": {
                                "line": 769,
                                "column": 69
                              }
                            },
                            "range": [
                              32065,
                              32084
                            ]
                          }
                        ]
                      },
                      "alternate": {
                        "type": "ExpressionStatement",
                        "start": 32142,
                        "end": 32159,
                        "loc": {
                          "start": {
                            "line": 772,
                            "column": 12
                          },
                          "end": {
                            "line": 772,
                            "column": 29
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 32142,
                          "end": 32158,
                          "loc": {
                            "start": {
                              "line": 772,
                              "column": 12
                            },
                            "end": {
                              "line": 772,
                              "column": 28
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 32142,
                            "end": 32156,
                            "loc": {
                              "start": {
                                "line": 772,
                                "column": 12
                              },
                              "end": {
                                "line": 772,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 32142,
                              "end": 32146,
                              "loc": {
                                "start": {
                                  "line": 772,
                                  "column": 12
                                },
                                "end": {
                                  "line": 772,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 32147,
                              "end": 32156,
                              "loc": {
                                "start": {
                                  "line": 772,
                                  "column": 17
                                },
                                "end": {
                                  "line": 772,
                                  "column": 26
                                }
                              },
                              "name": "updateBox"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 32168,
                      "end": 32183,
                      "loc": {
                        "start": {
                          "line": 773,
                          "column": 8
                        },
                        "end": {
                          "line": 773,
                          "column": 23
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 32168,
                        "end": 32182,
                        "loc": {
                          "start": {
                            "line": 773,
                            "column": 8
                          },
                          "end": {
                            "line": 773,
                            "column": 22
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 32168,
                          "end": 32180,
                          "loc": {
                            "start": {
                              "line": 773,
                              "column": 8
                            },
                            "end": {
                              "line": 773,
                              "column": 20
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 32168,
                            "end": 32172,
                            "loc": {
                              "start": {
                                "line": 773,
                                "column": 8
                              },
                              "end": {
                                "line": 773,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 32173,
                            "end": 32180,
                            "loc": {
                              "start": {
                                "line": 773,
                                "column": 13
                              },
                              "end": {
                                "line": 773,
                                "column": 20
                              }
                            },
                            "name": "showBox"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 32195,
              "end": 32738,
              "loc": {
                "start": {
                  "line": 776,
                  "column": 4
                },
                "end": {
                  "line": 784,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 32195,
                "end": 32211,
                "loc": {
                  "start": {
                    "line": 776,
                    "column": 4
                  },
                  "end": {
                    "line": 776,
                    "column": 20
                  }
                },
                "name": "updateFromServer"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 32211,
                "end": 32738,
                "loc": {
                  "start": {
                    "line": 776,
                    "column": 20
                  },
                  "end": {
                    "line": 784,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 32212,
                    "end": 32218,
                    "loc": {
                      "start": {
                        "line": 776,
                        "column": 21
                      },
                      "end": {
                        "line": 776,
                        "column": 27
                      }
                    },
                    "name": "server"
                  },
                  {
                    "type": "Identifier",
                    "start": 32220,
                    "end": 32238,
                    "loc": {
                      "start": {
                        "line": 776,
                        "column": 29
                      },
                      "end": {
                        "line": 776,
                        "column": 47
                      }
                    },
                    "name": "preparedStatements"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 32240,
                  "end": 32738,
                  "loc": {
                    "start": {
                      "line": 776,
                      "column": 49
                    },
                    "end": {
                      "line": 784,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 32250,
                      "end": 32276,
                      "loc": {
                        "start": {
                          "line": 777,
                          "column": 8
                        },
                        "end": {
                          "line": 777,
                          "column": 34
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 32254,
                          "end": 32275,
                          "loc": {
                            "start": {
                              "line": 777,
                              "column": 12
                            },
                            "end": {
                              "line": 777,
                              "column": 33
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 32254,
                            "end": 32258,
                            "loc": {
                              "start": {
                                "line": 777,
                                "column": 12
                              },
                              "end": {
                                "line": 777,
                                "column": 16
                              }
                            },
                            "name": "part"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 32261,
                            "end": 32275,
                            "loc": {
                              "start": {
                                "line": 777,
                                "column": 19
                              },
                              "end": {
                                "line": 777,
                                "column": 33
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 32261,
                              "end": 32273,
                              "loc": {
                                "start": {
                                  "line": 777,
                                  "column": 19
                                },
                                "end": {
                                  "line": 777,
                                  "column": 31
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 32261,
                                "end": 32265,
                                "loc": {
                                  "start": {
                                    "line": 777,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 777,
                                    "column": 23
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 32266,
                                "end": 32273,
                                "loc": {
                                  "start": {
                                    "line": 777,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 777,
                                    "column": 31
                                  }
                                },
                                "name": "getPart"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 32285,
                      "end": 32363,
                      "loc": {
                        "start": {
                          "line": 778,
                          "column": 8
                        },
                        "end": {
                          "line": 778,
                          "column": 86
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 32285,
                        "end": 32362,
                        "loc": {
                          "start": {
                            "line": 778,
                            "column": 8
                          },
                          "end": {
                            "line": 778,
                            "column": 85
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 32285,
                          "end": 32315,
                          "loc": {
                            "start": {
                              "line": 778,
                              "column": 8
                            },
                            "end": {
                              "line": 778,
                              "column": 38
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 32285,
                            "end": 32309,
                            "loc": {
                              "start": {
                                "line": 778,
                                "column": 8
                              },
                              "end": {
                                "line": 778,
                                "column": 32
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 32285,
                              "end": 32302,
                              "loc": {
                                "start": {
                                  "line": 778,
                                  "column": 8
                                },
                                "end": {
                                  "line": 778,
                                  "column": 25
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 32285,
                                "end": 32289,
                                "loc": {
                                  "start": {
                                    "line": 778,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 778,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 32290,
                                "end": 32302,
                                "loc": {
                                  "start": {
                                    "line": 778,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 778,
                                    "column": 25
                                  }
                                },
                                "name": "__dimensions"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 32303,
                              "end": 32309,
                              "loc": {
                                "start": {
                                  "line": 778,
                                  "column": 26
                                },
                                "end": {
                                  "line": 778,
                                  "column": 32
                                }
                              },
                              "name": "remove"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 32310,
                            "end": 32315,
                            "loc": {
                              "start": {
                                "line": 778,
                                "column": 33
                              },
                              "end": {
                                "line": 778,
                                "column": 38
                              }
                            },
                            "name": "apply"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 32316,
                            "end": 32333,
                            "loc": {
                              "start": {
                                "line": 778,
                                "column": 39
                              },
                              "end": {
                                "line": 778,
                                "column": 56
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 32316,
                              "end": 32320,
                              "loc": {
                                "start": {
                                  "line": 778,
                                  "column": 39
                                },
                                "end": {
                                  "line": 778,
                                  "column": 43
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 32321,
                              "end": 32333,
                              "loc": {
                                "start": {
                                  "line": 778,
                                  "column": 44
                                },
                                "end": {
                                  "line": 778,
                                  "column": 56
                                }
                              },
                              "name": "__dimensions"
                            },
                            "computed": false
                          },
                          {
                            "type": "MemberExpression",
                            "start": 32335,
                            "end": 32361,
                            "loc": {
                              "start": {
                                "line": 778,
                                "column": 58
                              },
                              "end": {
                                "line": 778,
                                "column": 84
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 32335,
                              "end": 32352,
                              "loc": {
                                "start": {
                                  "line": 778,
                                  "column": 58
                                },
                                "end": {
                                  "line": 778,
                                  "column": 75
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 32335,
                                "end": 32339,
                                "loc": {
                                  "start": {
                                    "line": 778,
                                    "column": 58
                                  },
                                  "end": {
                                    "line": 778,
                                    "column": 62
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 32340,
                                "end": 32352,
                                "loc": {
                                  "start": {
                                    "line": 778,
                                    "column": 63
                                  },
                                  "end": {
                                    "line": 778,
                                    "column": 75
                                  }
                                },
                                "name": "__dimensions"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 32353,
                              "end": 32361,
                              "loc": {
                                "start": {
                                  "line": 778,
                                  "column": 76
                                },
                                "end": {
                                  "line": 778,
                                  "column": 84
                                }
                              },
                              "name": "children"
                            },
                            "computed": false
                          }
                        ]
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 32372,
                      "end": 32639,
                      "loc": {
                        "start": {
                          "line": 779,
                          "column": 8
                        },
                        "end": {
                          "line": 782,
                          "column": 11
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 32376,
                          "end": 32638,
                          "loc": {
                            "start": {
                              "line": 779,
                              "column": 12
                            },
                            "end": {
                              "line": 782,
                              "column": 10
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 32376,
                            "end": 32386,
                            "loc": {
                              "start": {
                                "line": 779,
                                "column": 12
                              },
                              "end": {
                                "line": 779,
                                "column": 22
                              }
                            },
                            "name": "statements"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 32389,
                            "end": 32638,
                            "loc": {
                              "start": {
                                "line": 779,
                                "column": 25
                              },
                              "end": {
                                "line": 782,
                                "column": 10
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 32389,
                              "end": 32422,
                              "loc": {
                                "start": {
                                  "line": 779,
                                  "column": 25
                                },
                                "end": {
                                  "line": 779,
                                  "column": 58
                                }
                              },
                              "object": {
                                "type": "LogicalExpression",
                                "start": 32390,
                                "end": 32414,
                                "loc": {
                                  "start": {
                                    "line": 779,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 779,
                                    "column": 50
                                  }
                                },
                                "left": {
                                  "type": "Identifier",
                                  "start": 32390,
                                  "end": 32408,
                                  "loc": {
                                    "start": {
                                      "line": 779,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 779,
                                      "column": 44
                                    }
                                  },
                                  "name": "preparedStatements"
                                },
                                "operator": "||",
                                "right": {
                                  "type": "ArrayExpression",
                                  "start": 32412,
                                  "end": 32414,
                                  "loc": {
                                    "start": {
                                      "line": 779,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 779,
                                      "column": 50
                                    }
                                  },
                                  "elements": []
                                },
                                "parenthesizedExpression": true
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 32416,
                                "end": 32422,
                                "loc": {
                                  "start": {
                                    "line": 779,
                                    "column": 52
                                  },
                                  "end": {
                                    "line": 779,
                                    "column": 58
                                  }
                                },
                                "name": "concat"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "ArrayExpression",
                                "start": 32423,
                                "end": 32637,
                                "loc": {
                                  "start": {
                                    "line": 779,
                                    "column": 59
                                  },
                                  "end": {
                                    "line": 782,
                                    "column": 9
                                  }
                                },
                                "elements": [
                                  {
                                    "type": "CallExpression",
                                    "start": 32437,
                                    "end": 32479,
                                    "loc": {
                                      "start": {
                                        "line": 780,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 780,
                                        "column": 54
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 32437,
                                      "end": 32467,
                                      "loc": {
                                        "start": {
                                          "line": 780,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 780,
                                          "column": 42
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 32437,
                                        "end": 32444,
                                        "loc": {
                                          "start": {
                                            "line": 780,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 780,
                                            "column": 19
                                          }
                                        },
                                        "name": "Interop"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 32445,
                                        "end": 32467,
                                        "loc": {
                                          "start": {
                                            "line": 780,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 780,
                                            "column": 42
                                          }
                                        },
                                        "name": "CreateSketchDimensions"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "ThisExpression",
                                        "start": 32468,
                                        "end": 32472,
                                        "loc": {
                                          "start": {
                                            "line": 780,
                                            "column": 43
                                          },
                                          "end": {
                                            "line": 780,
                                            "column": 47
                                          }
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 32474,
                                        "end": 32478,
                                        "loc": {
                                          "start": {
                                            "line": 780,
                                            "column": 49
                                          },
                                          "end": {
                                            "line": 780,
                                            "column": 53
                                          }
                                        },
                                        "value": true,
                                        "rawValue": true,
                                        "raw": "true"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 32516,
                                    "end": 32560,
                                    "loc": {
                                      "start": {
                                        "line": 781,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 781,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 32516,
                                      "end": 32554,
                                      "loc": {
                                        "start": {
                                          "line": 781,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 781,
                                          "column": 50
                                        }
                                      },
                                      "object": {
                                        "type": "CallExpression",
                                        "start": 32516,
                                        "end": 32540,
                                        "loc": {
                                          "start": {
                                            "line": 781,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 781,
                                            "column": 36
                                          }
                                        },
                                        "callee": {
                                          "type": "Identifier",
                                          "start": 32516,
                                          "end": 32534,
                                          "loc": {
                                            "start": {
                                              "line": 781,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 781,
                                              "column": 30
                                            }
                                          },
                                          "name": "getObjectStatement",
                                          "leadingComments": null
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 32535,
                                            "end": 32539,
                                            "loc": {
                                              "start": {
                                                "line": 781,
                                                "column": 31
                                              },
                                              "end": {
                                                "line": 781,
                                                "column": 35
                                              }
                                            },
                                            "name": "part"
                                          }
                                        ],
                                        "leadingComments": null
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 32541,
                                        "end": 32554,
                                        "loc": {
                                          "start": {
                                            "line": 781,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 781,
                                            "column": 50
                                          }
                                        },
                                        "name": "parseToObject"
                                      },
                                      "computed": false,
                                      "leadingComments": null
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 32555,
                                        "end": 32559,
                                        "loc": {
                                          "start": {
                                            "line": 781,
                                            "column": 51
                                          },
                                          "end": {
                                            "line": 781,
                                            "column": 55
                                          }
                                        },
                                        "name": "part"
                                      }
                                    ],
                                    "leadingComments": [
                                      {
                                        "type": "CommentLine",
                                        "value": " recreate dimensions",
                                        "start": 32481,
                                        "end": 32503,
                                        "loc": {
                                          "start": {
                                            "line": 780,
                                            "column": 56
                                          },
                                          "end": {
                                            "line": 780,
                                            "column": 78
                                          }
                                        },
                                        "range": [
                                          32481,
                                          32503
                                        ]
                                      }
                                    ]
                                  }
                                ]
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 32648,
                      "end": 32732,
                      "loc": {
                        "start": {
                          "line": 783,
                          "column": 8
                        },
                        "end": {
                          "line": 783,
                          "column": 92
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 32655,
                        "end": 32731,
                        "loc": {
                          "start": {
                            "line": 783,
                            "column": 15
                          },
                          "end": {
                            "line": 783,
                            "column": 91
                          }
                        },
                        "callee": {
                          "type": "Identifier",
                          "start": 32655,
                          "end": 32670,
                          "loc": {
                            "start": {
                              "line": 783,
                              "column": 15
                            },
                            "end": {
                              "line": 783,
                              "column": 30
                            }
                          },
                          "name": "executePrepared",
                          "leadingComments": null
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 32671,
                            "end": 32677,
                            "loc": {
                              "start": {
                                "line": 783,
                                "column": 31
                              },
                              "end": {
                                "line": 783,
                                "column": 37
                              }
                            },
                            "name": "server"
                          },
                          {
                            "type": "Identifier",
                            "start": 32679,
                            "end": 32689,
                            "loc": {
                              "start": {
                                "line": 783,
                                "column": 39
                              },
                              "end": {
                                "line": 783,
                                "column": 49
                              }
                            },
                            "name": "statements"
                          },
                          {
                            "type": "CallExpression",
                            "start": 32691,
                            "end": 32730,
                            "loc": {
                              "start": {
                                "line": 783,
                                "column": 51
                              },
                              "end": {
                                "line": 783,
                                "column": 90
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 32691,
                              "end": 32724,
                              "loc": {
                                "start": {
                                  "line": 783,
                                  "column": 51
                                },
                                "end": {
                                  "line": 783,
                                  "column": 84
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 32691,
                                "end": 32719,
                                "loc": {
                                  "start": {
                                    "line": 783,
                                    "column": 51
                                  },
                                  "end": {
                                    "line": 783,
                                    "column": 79
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 32691,
                                  "end": 32695,
                                  "loc": {
                                    "start": {
                                      "line": 783,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 783,
                                      "column": 55
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 32696,
                                  "end": 32719,
                                  "loc": {
                                    "start": {
                                      "line": 783,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 783,
                                      "column": 79
                                    }
                                  },
                                  "name": "updateDimensionsFactory"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 32720,
                                "end": 32724,
                                "loc": {
                                  "start": {
                                    "line": 783,
                                    "column": 80
                                  },
                                  "end": {
                                    "line": 783,
                                    "column": 84
                                  }
                                },
                                "name": "bind"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "ThisExpression",
                                "start": 32725,
                                "end": 32729,
                                "loc": {
                                  "start": {
                                    "line": 783,
                                    "column": 85
                                  },
                                  "end": {
                                    "line": 783,
                                    "column": 89
                                  }
                                }
                              }
                            ]
                          }
                        ],
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " update sketch and related sets (expression/geometry/dimension)",
                          "start": 32562,
                          "end": 32627,
                          "loc": {
                            "start": {
                              "line": 781,
                              "column": 58
                            },
                            "end": {
                              "line": 781,
                              "column": 123
                            }
                          },
                          "range": [
                            32562,
                            32627
                          ]
                        }
                      ]
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 32744,
              "end": 33036,
              "loc": {
                "start": {
                  "line": 786,
                  "column": 4
                },
                "end": {
                  "line": 790,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 32744,
                "end": 32760,
                "loc": {
                  "start": {
                    "line": 786,
                    "column": 4
                  },
                  "end": {
                    "line": 786,
                    "column": 20
                  }
                },
                "name": "solveConstraints"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 32760,
                "end": 33036,
                "loc": {
                  "start": {
                    "line": 786,
                    "column": 20
                  },
                  "end": {
                    "line": 790,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 32763,
                  "end": 33036,
                  "loc": {
                    "start": {
                      "line": 786,
                      "column": 23
                    },
                    "end": {
                      "line": 790,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 32929,
                      "end": 33030,
                      "loc": {
                        "start": {
                          "line": 789,
                          "column": 8
                        },
                        "end": {
                          "line": 789,
                          "column": 109
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 32936,
                        "end": 33029,
                        "loc": {
                          "start": {
                            "line": 789,
                            "column": 15
                          },
                          "end": {
                            "line": 789,
                            "column": 108
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 32936,
                          "end": 33018,
                          "loc": {
                            "start": {
                              "line": 789,
                              "column": 15
                            },
                            "end": {
                              "line": 789,
                              "column": 97
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 32936,
                            "end": 33013,
                            "loc": {
                              "start": {
                                "line": 789,
                                "column": 15
                              },
                              "end": {
                                "line": 789,
                                "column": 92
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 32936,
                              "end": 32957,
                              "loc": {
                                "start": {
                                  "line": 789,
                                  "column": 15
                                },
                                "end": {
                                  "line": 789,
                                  "column": 36
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 32936,
                                "end": 32940,
                                "loc": {
                                  "start": {
                                    "line": 789,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 789,
                                    "column": 19
                                  }
                                },
                                "leadingComments": null
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 32941,
                                "end": 32957,
                                "loc": {
                                  "start": {
                                    "line": 789,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 789,
                                    "column": 36
                                  }
                                },
                                "name": "updateFromServer"
                              },
                              "computed": false,
                              "leadingComments": null
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 32958,
                                "end": 32978,
                                "loc": {
                                  "start": {
                                    "line": 789,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 789,
                                    "column": 57
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 32958,
                                  "end": 32971,
                                  "loc": {
                                    "start": {
                                      "line": 789,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 789,
                                      "column": 50
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 32958,
                                    "end": 32962,
                                    "loc": {
                                      "start": {
                                        "line": 789,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 789,
                                        "column": 41
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 32963,
                                    "end": 32971,
                                    "loc": {
                                      "start": {
                                        "line": 789,
                                        "column": 42
                                      },
                                      "end": {
                                        "line": 789,
                                        "column": 50
                                      }
                                    },
                                    "name": "sketcher"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 32972,
                                  "end": 32978,
                                  "loc": {
                                    "start": {
                                      "line": 789,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 789,
                                      "column": 57
                                    }
                                  },
                                  "name": "server"
                                },
                                "computed": false
                              },
                              {
                                "type": "ArrayExpression",
                                "start": 32980,
                                "end": 33012,
                                "loc": {
                                  "start": {
                                    "line": 789,
                                    "column": 59
                                  },
                                  "end": {
                                    "line": 789,
                                    "column": 91
                                  }
                                },
                                "elements": [
                                  {
                                    "type": "CallExpression",
                                    "start": 32981,
                                    "end": 33011,
                                    "loc": {
                                      "start": {
                                        "line": 789,
                                        "column": 60
                                      },
                                      "end": {
                                        "line": 789,
                                        "column": 90
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 32981,
                                      "end": 33005,
                                      "loc": {
                                        "start": {
                                          "line": 789,
                                          "column": 60
                                        },
                                        "end": {
                                          "line": 789,
                                          "column": 84
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 32981,
                                        "end": 32988,
                                        "loc": {
                                          "start": {
                                            "line": 789,
                                            "column": 60
                                          },
                                          "end": {
                                            "line": 789,
                                            "column": 67
                                          }
                                        },
                                        "name": "Interop"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 32989,
                                        "end": 33005,
                                        "loc": {
                                          "start": {
                                            "line": 789,
                                            "column": 68
                                          },
                                          "end": {
                                            "line": 789,
                                            "column": 84
                                          }
                                        },
                                        "name": "SolveConstraints"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "ThisExpression",
                                        "start": 33006,
                                        "end": 33010,
                                        "loc": {
                                          "start": {
                                            "line": 789,
                                            "column": 85
                                          },
                                          "end": {
                                            "line": 789,
                                            "column": 89
                                          }
                                        }
                                      }
                                    ]
                                  }
                                ]
                              }
                            ],
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 33014,
                            "end": 33018,
                            "loc": {
                              "start": {
                                "line": 789,
                                "column": 93
                              },
                              "end": {
                                "line": 789,
                                "column": 97
                              }
                            },
                            "name": "then"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 33019,
                            "end": 33028,
                            "loc": {
                              "start": {
                                "line": 789,
                                "column": 98
                              },
                              "end": {
                                "line": 789,
                                "column": 107
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": true,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 33019,
                                "end": 33020,
                                "loc": {
                                  "start": {
                                    "line": 789,
                                    "column": 98
                                  },
                                  "end": {
                                    "line": 789,
                                    "column": 99
                                  }
                                },
                                "name": "r"
                              }
                            ],
                            "body": {
                              "type": "MemberExpression",
                              "start": 33024,
                              "end": 33028,
                              "loc": {
                                "start": {
                                  "line": 789,
                                  "column": 103
                                },
                                "end": {
                                  "line": 789,
                                  "column": 107
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 33024,
                                "end": 33025,
                                "loc": {
                                  "start": {
                                    "line": 789,
                                    "column": 103
                                  },
                                  "end": {
                                    "line": 789,
                                    "column": 104
                                  }
                                },
                                "name": "r"
                              },
                              "property": {
                                "type": "Literal",
                                "start": 33026,
                                "end": 33027,
                                "loc": {
                                  "start": {
                                    "line": 789,
                                    "column": 105
                                  },
                                  "end": {
                                    "line": 789,
                                    "column": 106
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              },
                              "computed": true
                            }
                          }
                        ],
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " return SolveConstraints result after calling updateFromServer",
                          "start": 32773,
                          "end": 32837,
                          "loc": {
                            "start": {
                              "line": 787,
                              "column": 8
                            },
                            "end": {
                              "line": 787,
                              "column": 72
                            }
                          },
                          "range": [
                            32773,
                            32837
                          ]
                        },
                        {
                          "type": "CommentLine",
                          "value": " see SketcherInterface.cclass for description of return values (0, 1, 2)",
                          "start": 32846,
                          "end": 32920,
                          "loc": {
                            "start": {
                              "line": 788,
                              "column": 8
                            },
                            "end": {
                              "line": 788,
                              "column": 82
                            }
                          },
                          "range": [
                            32846,
                            32920
                          ]
                        }
                      ]
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " for loop over object or objects, including child points",
                  "start": 33042,
                  "end": 33100,
                  "loc": {
                    "start": {
                      "line": 792,
                      "column": 4
                    },
                    "end": {
                      "line": 792,
                      "column": 62
                    }
                  },
                  "range": [
                    33042,
                    33100
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " if no callback specified, then all the objects are returned in array",
                  "start": 33105,
                  "end": 33176,
                  "loc": {
                    "start": {
                      "line": 793,
                      "column": 4
                    },
                    "end": {
                      "line": 793,
                      "column": 75
                    }
                  },
                  "range": [
                    33105,
                    33176
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 33181,
              "end": 33728,
              "loc": {
                "start": {
                  "line": 794,
                  "column": 4
                },
                "end": {
                  "line": 813,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 33188,
                "end": 33210,
                "loc": {
                  "start": {
                    "line": 794,
                    "column": 11
                  },
                  "end": {
                    "line": 794,
                    "column": 33
                  }
                },
                "name": "ForObjectsWithChildren"
              },
              "static": true,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 33210,
                "end": 33728,
                "loc": {
                  "start": {
                    "line": 794,
                    "column": 33
                  },
                  "end": {
                    "line": 813,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 33211,
                    "end": 33215,
                    "loc": {
                      "start": {
                        "line": 794,
                        "column": 34
                      },
                      "end": {
                        "line": 794,
                        "column": 38
                      }
                    },
                    "name": "objs"
                  },
                  {
                    "type": "Identifier",
                    "start": 33217,
                    "end": 33225,
                    "loc": {
                      "start": {
                        "line": 794,
                        "column": 40
                      },
                      "end": {
                        "line": 794,
                        "column": 48
                      }
                    },
                    "name": "callback"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 33227,
                  "end": 33728,
                  "loc": {
                    "start": {
                      "line": 794,
                      "column": 50
                    },
                    "end": {
                      "line": 813,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 33237,
                      "end": 33260,
                      "loc": {
                        "start": {
                          "line": 795,
                          "column": 8
                        },
                        "end": {
                          "line": 795,
                          "column": 31
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 33241,
                          "end": 33259,
                          "loc": {
                            "start": {
                              "line": 795,
                              "column": 12
                            },
                            "end": {
                              "line": 795,
                              "column": 30
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 33241,
                            "end": 33247,
                            "loc": {
                              "start": {
                                "line": 795,
                                "column": 12
                              },
                              "end": {
                                "line": 795,
                                "column": 18
                              }
                            },
                            "name": "result"
                          },
                          "init": {
                            "type": "Identifier",
                            "start": 33250,
                            "end": 33259,
                            "loc": {
                              "start": {
                                "line": 795,
                                "column": 21
                              },
                              "end": {
                                "line": 795,
                                "column": 30
                              }
                            },
                            "name": "undefined"
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 33269,
                      "end": 33370,
                      "loc": {
                        "start": {
                          "line": 796,
                          "column": 8
                        },
                        "end": {
                          "line": 799,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 33273,
                        "end": 33282,
                        "loc": {
                          "start": {
                            "line": 796,
                            "column": 12
                          },
                          "end": {
                            "line": 796,
                            "column": 21
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "Identifier",
                          "start": 33274,
                          "end": 33282,
                          "loc": {
                            "start": {
                              "line": 796,
                              "column": 13
                            },
                            "end": {
                              "line": 796,
                              "column": 21
                            }
                          },
                          "name": "callback"
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 33284,
                        "end": 33370,
                        "loc": {
                          "start": {
                            "line": 796,
                            "column": 23
                          },
                          "end": {
                            "line": 799,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 33298,
                            "end": 33310,
                            "loc": {
                              "start": {
                                "line": 797,
                                "column": 12
                              },
                              "end": {
                                "line": 797,
                                "column": 24
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 33298,
                              "end": 33309,
                              "loc": {
                                "start": {
                                  "line": 797,
                                  "column": 12
                                },
                                "end": {
                                  "line": 797,
                                  "column": 23
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "Identifier",
                                "start": 33298,
                                "end": 33304,
                                "loc": {
                                  "start": {
                                    "line": 797,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 797,
                                    "column": 18
                                  }
                                },
                                "name": "result"
                              },
                              "right": {
                                "type": "ArrayExpression",
                                "start": 33307,
                                "end": 33309,
                                "loc": {
                                  "start": {
                                    "line": 797,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 797,
                                    "column": 23
                                  }
                                },
                                "elements": []
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 33323,
                            "end": 33360,
                            "loc": {
                              "start": {
                                "line": 798,
                                "column": 12
                              },
                              "end": {
                                "line": 798,
                                "column": 49
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 33323,
                              "end": 33359,
                              "loc": {
                                "start": {
                                  "line": 798,
                                  "column": 12
                                },
                                "end": {
                                  "line": 798,
                                  "column": 48
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "Identifier",
                                "start": 33323,
                                "end": 33331,
                                "loc": {
                                  "start": {
                                    "line": 798,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 798,
                                    "column": 20
                                  }
                                },
                                "name": "callback"
                              },
                              "right": {
                                "type": "ArrowFunctionExpression",
                                "start": 33335,
                                "end": 33358,
                                "loc": {
                                  "start": {
                                    "line": 798,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 798,
                                    "column": 47
                                  }
                                },
                                "id": null,
                                "generator": false,
                                "expression": true,
                                "async": false,
                                "params": [
                                  {
                                    "type": "Identifier",
                                    "start": 33335,
                                    "end": 33338,
                                    "loc": {
                                      "start": {
                                        "line": 798,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 798,
                                        "column": 27
                                      }
                                    },
                                    "name": "obj"
                                  }
                                ],
                                "body": {
                                  "type": "CallExpression",
                                  "start": 33342,
                                  "end": 33358,
                                  "loc": {
                                    "start": {
                                      "line": 798,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 798,
                                      "column": 47
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 33342,
                                    "end": 33353,
                                    "loc": {
                                      "start": {
                                        "line": 798,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 798,
                                        "column": 42
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 33342,
                                      "end": 33348,
                                      "loc": {
                                        "start": {
                                          "line": 798,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 798,
                                          "column": 37
                                        }
                                      },
                                      "name": "result"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 33349,
                                      "end": 33353,
                                      "loc": {
                                        "start": {
                                          "line": 798,
                                          "column": 38
                                        },
                                        "end": {
                                          "line": 798,
                                          "column": 42
                                        }
                                      },
                                      "name": "push"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 33354,
                                      "end": 33357,
                                      "loc": {
                                        "start": {
                                          "line": 798,
                                          "column": 43
                                        },
                                        "end": {
                                          "line": 798,
                                          "column": 46
                                        }
                                      },
                                      "name": "obj"
                                    }
                                  ]
                                },
                                "parenthesizedExpression": true
                              }
                            }
                          }
                        ]
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 33380,
                      "end": 33403,
                      "loc": {
                        "start": {
                          "line": 801,
                          "column": 8
                        },
                        "end": {
                          "line": 801,
                          "column": 31
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 33380,
                        "end": 33402,
                        "loc": {
                          "start": {
                            "line": 801,
                            "column": 8
                          },
                          "end": {
                            "line": 801,
                            "column": 30
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 33380,
                          "end": 33384,
                          "loc": {
                            "start": {
                              "line": 801,
                              "column": 8
                            },
                            "end": {
                              "line": 801,
                              "column": 12
                            }
                          },
                          "name": "objs"
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 33387,
                          "end": 33402,
                          "loc": {
                            "start": {
                              "line": 801,
                              "column": 15
                            },
                            "end": {
                              "line": 801,
                              "column": 30
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 33387,
                            "end": 33396,
                            "loc": {
                              "start": {
                                "line": 801,
                                "column": 15
                              },
                              "end": {
                                "line": 801,
                                "column": 24
                              }
                            },
                            "object": {
                              "type": "ArrayExpression",
                              "start": 33387,
                              "end": 33389,
                              "loc": {
                                "start": {
                                  "line": 801,
                                  "column": 15
                                },
                                "end": {
                                  "line": 801,
                                  "column": 17
                                }
                              },
                              "elements": []
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 33390,
                              "end": 33396,
                              "loc": {
                                "start": {
                                  "line": 801,
                                  "column": 18
                                },
                                "end": {
                                  "line": 801,
                                  "column": 24
                                }
                              },
                              "name": "concat"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 33397,
                              "end": 33401,
                              "loc": {
                                "start": {
                                  "line": 801,
                                  "column": 25
                                },
                                "end": {
                                  "line": 801,
                                  "column": 29
                                }
                              },
                              "name": "objs"
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 33412,
                      "end": 33698,
                      "loc": {
                        "start": {
                          "line": 802,
                          "column": 8
                        },
                        "end": {
                          "line": 810,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 33412,
                        "end": 33697,
                        "loc": {
                          "start": {
                            "line": 802,
                            "column": 8
                          },
                          "end": {
                            "line": 810,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 33412,
                          "end": 33424,
                          "loc": {
                            "start": {
                              "line": 802,
                              "column": 8
                            },
                            "end": {
                              "line": 802,
                              "column": 20
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 33412,
                            "end": 33416,
                            "loc": {
                              "start": {
                                "line": 802,
                                "column": 8
                              },
                              "end": {
                                "line": 802,
                                "column": 12
                              }
                            },
                            "name": "objs"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 33417,
                            "end": 33424,
                            "loc": {
                              "start": {
                                "line": 802,
                                "column": 13
                              },
                              "end": {
                                "line": 802,
                                "column": 20
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 33425,
                            "end": 33696,
                            "loc": {
                              "start": {
                                "line": 802,
                                "column": 21
                              },
                              "end": {
                                "line": 810,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 33425,
                                "end": 33428,
                                "loc": {
                                  "start": {
                                    "line": 802,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 802,
                                    "column": 24
                                  }
                                },
                                "name": "obj"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 33432,
                              "end": 33696,
                              "loc": {
                                "start": {
                                  "line": 802,
                                  "column": 28
                                },
                                "end": {
                                  "line": 810,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "IfStatement",
                                  "start": 33446,
                                  "end": 33463,
                                  "loc": {
                                    "start": {
                                      "line": 803,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 803,
                                      "column": 29
                                    }
                                  },
                                  "test": {
                                    "type": "UnaryExpression",
                                    "start": 33450,
                                    "end": 33454,
                                    "loc": {
                                      "start": {
                                        "line": 803,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 803,
                                        "column": 20
                                      }
                                    },
                                    "operator": "!",
                                    "prefix": true,
                                    "argument": {
                                      "type": "Identifier",
                                      "start": 33451,
                                      "end": 33454,
                                      "loc": {
                                        "start": {
                                          "line": 803,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 803,
                                          "column": 20
                                        }
                                      },
                                      "name": "obj"
                                    }
                                  },
                                  "consequent": {
                                    "type": "ReturnStatement",
                                    "start": 33456,
                                    "end": 33463,
                                    "loc": {
                                      "start": {
                                        "line": 803,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 803,
                                        "column": 29
                                      }
                                    },
                                    "argument": null
                                  },
                                  "alternate": null
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 33476,
                                  "end": 33490,
                                  "loc": {
                                    "start": {
                                      "line": 804,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 804,
                                      "column": 26
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 33476,
                                    "end": 33489,
                                    "loc": {
                                      "start": {
                                        "line": 804,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 804,
                                        "column": 25
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 33476,
                                      "end": 33484,
                                      "loc": {
                                        "start": {
                                          "line": 804,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 804,
                                          "column": 20
                                        }
                                      },
                                      "name": "callback"
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 33485,
                                        "end": 33488,
                                        "loc": {
                                          "start": {
                                            "line": 804,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 804,
                                            "column": 24
                                          }
                                        },
                                        "name": "obj"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 33503,
                                  "end": 33536,
                                  "loc": {
                                    "start": {
                                      "line": 805,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 805,
                                      "column": 45
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 33507,
                                    "end": 33527,
                                    "loc": {
                                      "start": {
                                        "line": 805,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 805,
                                        "column": 36
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 33507,
                                      "end": 33510,
                                      "loc": {
                                        "start": {
                                          "line": 805,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 805,
                                          "column": 19
                                        }
                                      },
                                      "name": "obj"
                                    },
                                    "operator": "instanceof",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 33522,
                                      "end": 33527,
                                      "loc": {
                                        "start": {
                                          "line": 805,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 805,
                                          "column": 36
                                        }
                                      },
                                      "name": "Point"
                                    }
                                  },
                                  "consequent": {
                                    "type": "ReturnStatement",
                                    "start": 33529,
                                    "end": 33536,
                                    "loc": {
                                      "start": {
                                        "line": 805,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 805,
                                        "column": 45
                                      }
                                    },
                                    "argument": null
                                  },
                                  "alternate": null
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 33549,
                                  "end": 33610,
                                  "loc": {
                                    "start": {
                                      "line": 806,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 807,
                                      "column": 45
                                    }
                                  },
                                  "test": {
                                    "type": "MemberExpression",
                                    "start": 33553,
                                    "end": 33563,
                                    "loc": {
                                      "start": {
                                        "line": 806,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 806,
                                        "column": 26
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 33553,
                                      "end": 33556,
                                      "loc": {
                                        "start": {
                                          "line": 806,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 806,
                                          "column": 19
                                        }
                                      },
                                      "name": "obj"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 33557,
                                      "end": 33563,
                                      "loc": {
                                        "start": {
                                          "line": 806,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 806,
                                          "column": 26
                                        }
                                      },
                                      "name": "points"
                                    },
                                    "computed": false
                                  },
                                  "consequent": {
                                    "type": "ExpressionStatement",
                                    "start": 33581,
                                    "end": 33610,
                                    "loc": {
                                      "start": {
                                        "line": 807,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 807,
                                        "column": 45
                                      }
                                    },
                                    "expression": {
                                      "type": "CallExpression",
                                      "start": 33581,
                                      "end": 33609,
                                      "loc": {
                                        "start": {
                                          "line": 807,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 807,
                                          "column": 44
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 33581,
                                        "end": 33599,
                                        "loc": {
                                          "start": {
                                            "line": 807,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 807,
                                            "column": 34
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 33581,
                                          "end": 33591,
                                          "loc": {
                                            "start": {
                                              "line": 807,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 807,
                                              "column": 26
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 33581,
                                            "end": 33584,
                                            "loc": {
                                              "start": {
                                                "line": 807,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 807,
                                                "column": 19
                                              }
                                            },
                                            "name": "obj"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 33585,
                                            "end": 33591,
                                            "loc": {
                                              "start": {
                                                "line": 807,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 807,
                                                "column": 26
                                              }
                                            },
                                            "name": "points"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 33592,
                                          "end": 33599,
                                          "loc": {
                                            "start": {
                                              "line": 807,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 807,
                                              "column": 34
                                            }
                                          },
                                          "name": "forEach"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 33600,
                                          "end": 33608,
                                          "loc": {
                                            "start": {
                                              "line": 807,
                                              "column": 35
                                            },
                                            "end": {
                                              "line": 807,
                                              "column": 43
                                            }
                                          },
                                          "name": "callback"
                                        }
                                      ]
                                    }
                                  },
                                  "alternate": null
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 33623,
                                  "end": 33686,
                                  "loc": {
                                    "start": {
                                      "line": 808,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 809,
                                      "column": 42
                                    }
                                  },
                                  "test": {
                                    "type": "MemberExpression",
                                    "start": 33627,
                                    "end": 33642,
                                    "loc": {
                                      "start": {
                                        "line": 808,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 808,
                                        "column": 31
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 33627,
                                      "end": 33630,
                                      "loc": {
                                        "start": {
                                          "line": 808,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 808,
                                          "column": 19
                                        }
                                      },
                                      "name": "obj"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 33631,
                                      "end": 33642,
                                      "loc": {
                                        "start": {
                                          "line": 808,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 808,
                                          "column": 31
                                        }
                                      },
                                      "name": "centerPoint"
                                    },
                                    "computed": false
                                  },
                                  "consequent": {
                                    "type": "ExpressionStatement",
                                    "start": 33660,
                                    "end": 33686,
                                    "loc": {
                                      "start": {
                                        "line": 809,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 809,
                                        "column": 42
                                      }
                                    },
                                    "expression": {
                                      "type": "CallExpression",
                                      "start": 33660,
                                      "end": 33685,
                                      "loc": {
                                        "start": {
                                          "line": 809,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 809,
                                          "column": 41
                                        }
                                      },
                                      "callee": {
                                        "type": "Identifier",
                                        "start": 33660,
                                        "end": 33668,
                                        "loc": {
                                          "start": {
                                            "line": 809,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 809,
                                            "column": 24
                                          }
                                        },
                                        "name": "callback"
                                      },
                                      "arguments": [
                                        {
                                          "type": "MemberExpression",
                                          "start": 33669,
                                          "end": 33684,
                                          "loc": {
                                            "start": {
                                              "line": 809,
                                              "column": 25
                                            },
                                            "end": {
                                              "line": 809,
                                              "column": 40
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 33669,
                                            "end": 33672,
                                            "loc": {
                                              "start": {
                                                "line": 809,
                                                "column": 25
                                              },
                                              "end": {
                                                "line": 809,
                                                "column": 28
                                              }
                                            },
                                            "name": "obj"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 33673,
                                            "end": 33684,
                                            "loc": {
                                              "start": {
                                                "line": 809,
                                                "column": 29
                                              },
                                              "end": {
                                                "line": 809,
                                                "column": 40
                                              }
                                            },
                                            "name": "centerPoint"
                                          },
                                          "computed": false
                                        }
                                      ]
                                    }
                                  },
                                  "alternate": null
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 33708,
                      "end": 33722,
                      "loc": {
                        "start": {
                          "line": 812,
                          "column": 8
                        },
                        "end": {
                          "line": 812,
                          "column": 22
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 33715,
                        "end": 33721,
                        "loc": {
                          "start": {
                            "line": 812,
                            "column": 15
                          },
                          "end": {
                            "line": 812,
                            "column": 21
                          }
                        },
                        "name": "result"
                      }
                    }
                  ]
                }
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " for loop over object or objects, including child points",
                  "start": 33042,
                  "end": 33100,
                  "loc": {
                    "start": {
                      "line": 792,
                      "column": 4
                    },
                    "end": {
                      "line": 792,
                      "column": 62
                    }
                  },
                  "range": [
                    33042,
                    33100
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": " if no callback specified, then all the objects are returned in array",
                  "start": 33105,
                  "end": 33176,
                  "loc": {
                    "start": {
                      "line": 793,
                      "column": 4
                    },
                    "end": {
                      "line": 793,
                      "column": 75
                    }
                  },
                  "range": [
                    33105,
                    33176
                  ]
                }
              ]
            }
          ]
        },
        "leadingComments": [],
        "trailingComments": []
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 33732,
      "end": 33782,
      "loc": {
        "start": {
          "line": 816,
          "column": 0
        },
        "end": {
          "line": 816,
          "column": 50
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 33732,
        "end": 33781,
        "loc": {
          "start": {
            "line": 816,
            "column": 0
          },
          "end": {
            "line": 816,
            "column": 49
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 33732,
          "end": 33772,
          "loc": {
            "start": {
              "line": 816,
              "column": 0
            },
            "end": {
              "line": 816,
              "column": 40
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 33732,
            "end": 33759,
            "loc": {
              "start": {
                "line": 816,
                "column": 0
              },
              "end": {
                "line": 816,
                "column": 27
              }
            },
            "object": {
              "type": "Identifier",
              "start": 33732,
              "end": 33746,
              "loc": {
                "start": {
                  "line": 816,
                  "column": 0
                },
                "end": {
                  "line": 816,
                  "column": 14
                }
              },
              "name": "ClassCadObject"
            },
            "property": {
              "type": "Identifier",
              "start": 33747,
              "end": 33759,
              "loc": {
                "start": {
                  "line": 816,
                  "column": 15
                },
                "end": {
                  "line": 816,
                  "column": 27
                }
              },
              "name": "classMapping"
            },
            "computed": false
          },
          "property": {
            "type": "Literal",
            "start": 33760,
            "end": 33771,
            "loc": {
              "start": {
                "line": 816,
                "column": 28
              },
              "end": {
                "line": 816,
                "column": 39
              }
            },
            "value": "CC_Sketch",
            "rawValue": "CC_Sketch",
            "raw": "'CC_Sketch'"
          },
          "computed": true
        },
        "right": {
          "type": "Identifier",
          "start": 33775,
          "end": 33781,
          "loc": {
            "start": {
              "line": 816,
              "column": 43
            },
            "end": {
              "line": 816,
              "column": 49
            }
          },
          "name": "Sketch"
        }
      }
    }
  ]
}